월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
IsPrime 함수에서 for문 범위 질문 드립니다.
def isPrime(x): ''' 소수인지 판별하는 함수 ''' if x==1: return False for i in range(2,x//2+1): if x%i==0: return False else: return True 위 for문에서 범위가 2부터 x를 2로나눈 몫까지 반복되는데, 예시로 들어주신 16의 경우, i가 2,3,4,5,6,7,8까지 반복문이 돌게 됩니다. 그런데 마지막 8의 경우는 2로 나눴을 때 이미 2*8=16으로 한번 나눠지게 되니 for문에 포함이 안되어도 될 것 같은데 아닌가요? range의 범위가 range(2,x//2)로 수정되어야 할 것 같은데, 맞는건지 궁금합니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
ch배열의 길이를 n+1로 해주는 이유가 뭘까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. n=int(input()) ch=[0]*(n+1) cnt=0 이 부분에서 ch배열의 크기를 왜 (n+1)만큼 곱해주나요? 그럼 배열이 n보다 하나 더 큰 수로 만들어지지 않나요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
섹션 4-3 뮤직비디오 문제
안녕하세요, 반례 설명 강의까지 잘 들었습니다. 그런데 오류를 수정하기 전 기존 코드에서 DVD 개수를 노래 개수와 같게 9개로 입력한 후 기존 코드로 실행했을 때 어떤 원리에 의해 DVD의 최소 용량이 1이라고 출력되는 건지 궁금합니다. 좋은 강의 감사드립니다!
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점시 발생하는 오류
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강사님께서 수업 중에 작성하신 코드로 동일하게 돌려도 계속 해당 오류가 뜹니다. 어떻게 해결해야할까요. 폴더로 잘 옮겼고 AA.py로 파일명 수정도 했습니다. 2-1. K번째 약수는 채점이 잘 되었습니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 실행 파일 오류 문의드립니다.
안녕하세요. 첫 번째 섹션의 첫 번째 문제인 "K번째 약수"를 구하는 문제를 풀고 채점 파일을 실행시키니 아래와 같은 에러가 뜨네요. 제가 작성한 코드는 아래와 같으며, 파일명을 AA.py로도 바꿔봤지만 안 됩니다. # 테스트 케이스용 text 파일을 불러오기 위한 코드 # import sys # test_file_path = r'C:\Users\XXX\Desktop\Data Science\Study\Algorithm\섹션 2\1. k번째 약수' # sys.stdin = open(f'{test_file_path}/in1.txt', 'rt') # 테스트 케이스 데이터 가져오기 n, k = map(int, input().split()) # N의 약수 구하기 num_list = [] for i in range(1, n + 1): if n % i == 0: num_list.append(i) # N의 약수 중, K 번째로 작은 수 구하기 if len(num_list) < k: print(-1) else: answer = num_list[k - 1] print(answer)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이렇게 풀었습니다. 괜찮은가요?
a = [list(map(int, input().split())) for i in range(7)] total = 0 for i in range(7): for j in range(3): x = [] y = [] for k in range(5): x.append(a[i][j+k]) y.append(a[j+k][i]) if x == x[::-1]: total += 1 if y == y[::-1]: total += 1 print(total)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이 코드는 비효율적일까요?
안녕하세요 강사님 강의 잘 듣고있습니다! 혹시 이렇게 코드를 만들어봤는데 강사님의 코드보다 많이 비효율적일까요? 채점결과 성공하긴했습니다. def dfs(L,s) : global ans if L == k : if (sum(res) % m) == 0 : ans+=1 else : for i in range(0,n) : if arr[i] > s: res[L] = arr[i] dfs(L+1, arr[i]) if __name__=="__main__" : n,k = map(int,input().split()) arr = list(map(int,input().split())) arr.sort() m = int(input()) res = [0]*(k) ans = 0 dfs(0,0) print(ans)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이 코드도 괜찮을까요?
안녕하세요 강사님 강의 잘 듣고있습니다 밑 코드 처럼 만들어도 괜찮은지 질문드리고싶습니다! def dfs(L,front) : global ans if L == m : ans+=1 for i in res : print(i, end= ' ') print() else : for i in range(1,n+1) : if i > front : res[L] = i dfs(L+1, i) if __name__=="__main__" : n,m = map(int,input().split()) res = [0] * m ans = 0 dfs(0,0) print(ans)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
좋은 강의 감사합니다. 말씀해주신 코드 관련해서 2가지 질문이 있습니다.
항상 양질의 강의 감사합니다. 다름이 아니라 2가지 질문이 있어서 남기게 되었습니다. 1) 이전까지 문제들은 BFS로 풀이할 때, while Q: <- 이 부분이 이중 for 구문 안에 있었는데 왜 해당 문제의 경우 따로 분리되어서 진행이 되나요? 논리적으로 고민해봐도 이해가 잘 되지 않습니다ㅠ 2) 문제 조건에 '저장될 때부터 모든 토마토가 익어있는 상태이면 0'을 출력하라고 되어있는데 코드에서 '토마토가 모두 익지는 못하는 상황이면 -1'을 출력하는 부분만 나와있는 것 같습니다. 혹시 어느 부분에 추가로 작성하면 되는지 알려주실 수 있으실까요? 다시 한번 항상 최고의 수업 제공해주셔서 감사 말씀 드립니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질문드립니다
숫자 추출할때 정규표현식으로 숫자인 요소 판단 후에 숫자인 요소는 배열 변수에 append해서 숫자로된 배열을 문자열로 변환후 다시 int로 변환시키면서 앞자리 0인 것들을 삭제하도록 처리했는데 이런 풀이도 문제 없을까요? for i in t: # 정규표현식으로 입력된 텍스트에서 숫자인 요소들만 추출 if regex.search(i) is not None: numArr.append(i) # 숫자인 요소들만 추출된 배열을 문자열로 변환후 다시 int로 변환시킴으로서 # 앞자리의 0은 자연수화 하면서 삭제처리 되도록함 num = int("".join(numArr)) print(num)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
res의 크기 질문
안녕하세요 강사님 강의 잘 듣고있습니다. 혹시 res의 크기는 [0]*m으로 해도 되나요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질문있습니다!
선생님 안녕하세요 우선 질문 전에 선생님 덕분에 알고리즘 풀이에 흥미를 조금씩 가질 수 있게된거 같아 감사인사드립니다! 이번 강의 듣기전에 개인적으로 먼저 풀어보았는데 제가 풀이한 방식에서 중복된 주사위 눈의 횟수를 구하는 부분에서 선생님이 풀이해주신 부분과 조금 다른 것 같아 질문 드립니다. 저는 구글링하다보니 파이썬 배열에 count라는 내장함수가 있어 주사위 한사이클당 반복된 눈의횟수 중 최대값과 눈의 값을 특정 변수에 담은 뒤에 상금계산식 분기처리를 했는데 선생님께서는 각 사이클을 sort한 뒤에 앞뒤값을 비교하는 방식으로 중복된 눈의 개수를 파악하는 방법으로 작성하셨는데 실제 코딩테스트를 해야하는 상황에서는 이런 내장함수를 쓰는건 최대한 지양해야될까요?? n = int(input()) result=[] for i in range(n): arr = list(map(int, input().split())) count=0 diceVal=0 for j in arr: # for문을 수행하면서 한 사이클당 반복된 눈의 횟수를 count변수, 중복된 눈의 값을 diceVal에 할당 if count<arr.count(j): count=arr.count(j) diceVal=j # 반복된 눈의 횟수에 따른 계산식에 대한 분기 처리 if count==3: result.append(10000+(diceVal*1000)) elif count==2: result.append(1000+(diceVal*100)) else: result.append(max(arr)*100) # 모든 결과값(상금값)중 최대값 출력 print(max(result))
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
바둑이 승차 문제 질문드립니다.
안녕하세요 선생님의 강의를 매우 유익하게 듣고 있는 학생입니다. 바둑이 승차 문제에서 if sum+(total-tsum) < result: return 이 부분은 L==n 에서 끝나지 않기 때문에 해주는 코드인가요? 만약 아니라면 문제에서 찾아볼 수 있는 간단한 예시 하나만 말씀해주시면 감사드리겠습니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
제 코드도 괜찮을까요??
저는 조건문을 여러개로 나눠 작성했는데.. lt rt는 생각도 못했어요ㅠ 질문1, 혹시 제 코드는 어떤가요?? 질문2. 인풋값의 범위가 커질 경우에는 강의에서 가르쳐주신대로 투포인터? 로 푸는게 제 코드보다는 훨씬 낫겠죠?? import sys from collections import deque read_file = open("/Users/Downloads/pythonalgorithm_formac/이분탐색&그리디/9. 증가수열 만들기/in5.txt", 'r') input = read_file.readline n = int(input()) nums = list(map(int, input().split())) nums = deque(nums) LR = "" temp = [] # 왼, 오 비교해서 더 작은 값 가져오는데, 그 수가 이미 만들어진 증가수열의 맨 끝 값보다 커야 함. # 그리고 가져오는 원소 위치에 따라 L, R 기록 # 최종 증가수열 원소의 갯수 카운팅 temp.append(0) while nums: if len(nums) == 1 and temp[-1] > nums[0]: if (nums[0] > int(temp[-1])): LR += 'L' break if (nums[0] < nums[-1]): if (nums[0] > int(temp[-1])): LR += 'L' temp.append(nums.popleft()) elif (nums[-1] > int(temp[-1])): LR += 'R' temp.append(nums.pop()) else: break elif (nums[0] > nums[-1]): if (nums[-1] > int(temp[-1])): LR += 'R' temp.append(nums.pop()) elif (nums[0] > int(temp[-1])): LR += 'L' temp.append(nums.popleft()) else: break print(len(temp)-1) print(LR) read_file.close()
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 시 발생하는 오류 (Judge(Python).exe)
채점 시 아래와 같은 오류가 발생합니다. (Judge(Python).exe) 처리되지 않은 예외: System.NullReferenceException: 개체 참조가 개체의 인스턴스로 설정되지 않았습니다. 위치: Judge.Program.Main(String[] args) 어떻게 하면 저의 답을 쉽게 채점할 수 있나요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
맥용에서 채점
안녕하세요? 맥에서 채점하기 위해서 입력으로 주어진 파일들에 대한 결과값이 다 정답하고 맞으면 문제를 맞게 푼걸로 봐도 되는건가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
코드 작성후 디버그했을 때
코드 작성하고 디버그를 돌렸는데 input.txt를 읽었을텐데 그냥 cmd창에는 press any key to continue 라고만 나옵니다.. 어떤 원인이 있는걸까요.. 현재 뒤집은 소수 강의까지 잘 듣다가 지금 이런 오류가 나타나네요 계속.. 코드도 강사님과 똑같이 잘 작성 하였는데요ㅠㅠ
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
dfs 공부관련 질문입니다.
강사님 파이썬을 처음 다루진 않지만 알고리즘 및 자료구조를 처음 공부하는 학생입니다. dfs 개념은 잡히는데 머릿속에서 문제를 읽고 dfs 개념의 핵심인 스택구조가 바로바로 떠올려지면서 코드를 구현하는게 너무 어렵습니다. 부분집합 구하기 문제또한 코드는 간단하나 이 코드가 진행되는 과정이 머릿속으로 바로 떠올려지지 않아 책에 적어보면서 공부를 하게 되네요. 어떻게 하면 머리속에 dfs개념을 바로 잡을 수 있을까요??
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
소스코드 관련 질문이 있습니다.
안녕하세요 :) 섹션 2. 6번 자릿수의 합에서 소스코드 관련하여 질문드립니다. 문제에서는 자릿수의 합이 같은 경우 입력순으로 먼저인 숫자가 출력이 된다고 되어있는데, 강의에서 풀이해주신 부분은 마지막에 입력된 숫자가 출력이 되는것 같습니다. max = -2147000000 for x in a : tot = digit_sum(x) if tot>max: max = tot res = x print(res) input1 7 137 460 603 40 521 128 125 >> 해당 텍스트로 인풋값을 넣었을 때 137이 출력이 되어야하는데 선생님이 설명해주신 코드로는 128이 출력이 되어, 혹시 코드가 변경되어야하는게 아닐까요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
코딩테스트 공부방법
안녕하세요 코딩테스트 공부중인 직장인인데... 해당 문제들을 푸는데 현재 3번 풀고있는데 1번은 그래도 풀었는데 2번은 문제 이해안되서 못풀고 넘기고 3번문제 중간 N개 입력하는 것까진 구현 했는데 세개의 합을 구하는 리스트를 만드는 방법은 생각조차 안나더라구요 6월중에 모집할 부트캠프 코딩테스트 합격 목표로 잡고있는데 모르면 코드 보고 이해하고 다시 써보고 넘겨서 푸는게 좋을까요 아니면 될때까지 어떠한 시간이 걸리든 푸는게 좋을까요 추천 부탁드립니다.