월 15,400원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
K번째 큰 수
안녕하세요! 궁금한 부분이 있어 질문 드립니다! for i in range(n): for j in range(i+1, n): for m in range(j+1, n): res.add(a[i]+a[j]+a[m]) 해답 코드가 위와 같은데, range를 n까지 설정해주는 이유가 무엇인가요? 저는 i의 범위를 n-2, j의 범위를 n-1로 설정해주어야 한다고 생각했습니다. 문제에서 주어진 '같은 숫자의 카드가 여러장 있을 수 있다' 때문인가요?? n장의 카드를 가지고 있는 경우니깐 i,j,m이 모두 n인 경우가 나올 수 없는것 아닌가 싶어서 여쭤봅니다!
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
뒤집은 소수 문제
2는 소수이기 때문에 for i in range(2, x//2+1): 이 구문에서 return False 가 아닌 True로 나오게 해야 하는거 아닌가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
미로탐색 상태트리
안녕하세요 선생님. dfs 문제 풀이 할 때 항상 상태트리를 그려보려고 하고있는데,미로탐색 DFS 문제의 경우에는 어떻게 그려야 할 지 감이 안잡혀서 질문 드립니다. 이 문제에 대한 상태트리는 어떻게 그려야하는 건가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이런 방법도 가능한가요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.사과나무 문제에 대해서 좌표를 잡은 다음에 즉 중앙갑을 (2,2)라는 값을 두고 abs 즉 절대값 함수를 이용하여 거리가 n/2를 이용하여 2 이하인 값의 범위 까지만 더해서 해도 괜찮은 가요? 즉 거x,y축 까지의 거리가 2 이하인 블록의 합을 구하는 방식입니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
index 와 max, min 함수로 풀어도 시간상 상관없는 걸까요?
l=int(input())a=list(map(int,input().split()))m=int(input())for i in range(m): #print(a.index(max(a)),a.index(min(a)),max(a),min(a)) a[a.index(max(a))]-=1 a[a.index(min(a))]+=1print(max(a)-(min(a)) ) 이렇게 간단하게 풀었는데 혹시 값이 많아지면 이게 sort보다 시간이 더 오래 걸리게 될까요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
스도쿠 검사 코드 확인
저는 처음 풀 때 겹치면 안되는 조건때문에 set으로 했고 이전에 배운 dx dy를 사용하여 칸마다 계산하는 것을 했는데 혹시 이런 방식도 되는지 여쭤봐도 될까요? a=[list(map(int,input().split())) for _ in range(9)]dx=[0,3,6,0,3,6,0,3,6]dy=[0,0,0,3,3,3,6,6,6]for i in range(9): b=set() c=set() for j in range(9): b.add(a[i][j]) c.add(a[j][i]) if len(b)!=9 or len(c)!=9: print("NO") break d=set() for k in range(3): #가로 for l in range(3): #세로 d.add(a[k+dx[i]][l+dy[i]]) if len(d)!=9: print("NO") breakelse: print("YES")
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
10나누기와 0.1 곱하기의 차이 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. round가 round half even 방식이라 짝수값에서 내림을 하는 것은 이해 했고 소수 첫째 자리에서 반올림 하고 싶으면 0.5를 더하고 int 로 감싸서 몫을 구하는 것을 이해했습니다. 소수 두 번째 자리도 시도해 보는 도중 정수에 10을 나누는 것과 0.1을 곱하는 것의 결과가 다르다는 것을 알게 되었습니다.혹시 다른 이유가 무엇인지 알 수 있을까요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
채점 프로그램 작동 안함
채점 프로그램을 돌리면 이렇게 뜨는데 해결 방법이 있을까요? 처리되지 않은 예외: System.AggregateException: 하나 이상의 오류가 발생했습니다. ---> System.IO.IOException: 파이프가 끝 났습니다. 위치: System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath) 위치: System.IO.__Error.WinIOError() 위치: System.IO.FileStream.FlushOSBuffer() 위치: System.IO.FileStream.<>c.<FlushAsync>b__117_0(Object state) 위치: System.Threading.Tasks.Task.InnerInvoke() 위치: System.Threading.Tasks.Task.Execute()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<FlushAsyncInternal>d__68.MoveNext()--- 예외가 throw된 이전 위치의 스택 추적 끝 --- 위치: System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess(Task task) 위치: System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification(Task task) 위치: System.IO.StreamWriter.<WriteAsyncInternal>d__55.MoveNext() --- 내부 예외 스택 추적의 끝 --- 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout, CancellationToken cancellationToken) 위치: System.Threading.Tasks.Task.WaitAll(Task[] tasks, Int32 millisecondsTimeout) 위치: Judge.Program.Main(String[] args)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
k번째 수 문제 자체를 이해를 못하겠습니다.
문제가 무슨 말을 하는지 이해를 못하겠어요.다른분들은 어렵지 않게 이해를 하시는거 같은데, 코딩테스트 연습 - K번째수 | 프로그래머스 스쿨 (programmers.co.kr)이거랑 같은거 같은데,이거는 이해가 되거든요?근데, 지금 저 두번째 강의문제는 뭘 구하라는건지이해를 못하겠어요... 숫자배열은 어디있고, 범위를 지정하는 start end랑 k번째수가도대체 입력예제에서 어디 부분을 말하는거죠???
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
배열 길이 n 질문
강의 내 소스 코드의 경우 주어진 배열의 갯수 n을 입력만 받고, 아예 사용 자체를 안하는데요..저게 해답이라고 할 수 있는건가요?사용을 안 할거라면, n을 입력받는 이유가 따로 있는건가요 기존 다른 답변들을 봤는데도, 그냥 해당 강의 소스를 확인해보라고만 하는데 말이죠
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
문제 파일은 어디에 있나요?
문제 파일은 어디에 있나요?안보여서 강의 영상 정지시키고 풀었는데... 이 방식이 아닌것 같은데 문제 파일은 안보이네요
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
뭐가 틀린것인지 잘 모르겠습니다
n , m = map(int,input().split()) lst=[list(map(int,input().split())) for _ in range(n)] dy=[0]*(m+1) ch=[[] for _ in range(m+1)] for i in range(n): for j in range(lst[i][1],m+1): if dy[j] < dy[j-lst[i][1]]+lst[i][0] and (i not in ch[j-lst[i][1]]): ch[j]=ch[j-lst[i][1]] + [i] dy[j] =dy[j-lst[i][1]]+lst[i][0] print(max(dy))제가 짠 코드는 원래값이랑 리스트돌면서 이 시간만큼썼을때 더해지는 점수랑 비교해서큰값으로 바꿔주는것입니다.만약 리스트돌면서 이 시간만큼썼을때 더해지는 점수가 컸을때는 해당하는 문제를 푼것이 되니깐 ch에 그 index가 있는지 없는지를 비교해서 있으면은 안바꿔주고 없으면은 바꿔주는것입니다.만약에 없어서 바꿔주면은 ch에 그 index를 추가하는 방식으로 구현을했는데 왜 틀린것인지 모르겠습니다
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이 코드 어느 부분에서 틀렸을까요??
# 레벨, 일하는중(남은시간) def dfs(level, working_time): global max_value working_time -= 1 if level >= n: # 날짜가 지났는데 아직도 일을 하는경우 if working_time >= 1: return tmp = 0 for i in range(n): if checked[i] == 1: tmp += li_input[i][1] if tmp > max_value: max_value = tmp else: # 남은 일이 없어야 일 진행가능 if working_time < 1: # 일해야 되는 시간 만큼을 인자로 넘김 working_time = li_input[level][0] checked[level] = 1 dfs(level + 1, working_time) checked[level] = 0 dfs(level + 1, working_time) n = int(input()) li_input = [] for i in range(n): li_input.append(tuple(map(int, input().split()))) checked = [0] * (n) max_value = 0 dfs(0,0) print(max_value) 문제에 적혀있는 예제 빼고 다 틀리네요.'휴가(삼성 SW역량평가 기출문제 : DFS활용)' 해당 문제 풀었습니다.다른 답으로 쉽게 풀수 있긴한데 해당 코드가 왜 틀리게 나오는지는 모르겠네요.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
사다리타기질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.import sys def DFS(L,x,y): global cnt if a[x][y]==2: print(cnt) sys.exit(0) else: if L==0: for i in range(10): cnt=i ch[x][y]=1 DFS(L+1,x,y+i) ch[x][y]=0 else: path_count=0 next_path=-1 for j in range(3): xx=x+dx[j] yy=y+dy[j] if 0<=xx<10 and 0<=yy<10 and a[xx][yy]==1 and ch[xx][yy]==0 : next_path=j path_count+=1 #갈 수 있는 방향이 아래로 하나만 있는 경우 if path_count==1: ch[xx][yy]=1 DFS(L+1,x+dx[next_path],y+dy[next_path]) ch[xx][yy]=0 #여러 방향으로 이동이 가능 elif path_count>1: for k in range(3): xx=x+dx[k] yy=y+dy[k] if 0<=xx<10 and 0<=yy<10 and a[xx][yy]==1 and ch[xx][yy]==0 : ch[xx][yy]=1 DFS(L+1,xx,yy) ch[xx][yy]=0 if __name__=="__main__": a=[list(map(int,input().split())) for _ in range(10)] dy=[1,-1,0]#우 좌 히 dx=[0,0,1] cnt=0 ch=[[0]*10 for _ in range(10)] DFS(0,0,0) 저는 up-bottom형식으로 탐색을 했는데 출력값이 아예나오지 않습니다. 어느 부분이 잘못되었는지 알 수 있을까요? ㅠㅠ
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
격자판 최대합 질문있습니다.
이렇게 for문안에 모두 넣었습니다. 예제 답으로는 154가 뜨지만 채점 시 100점으로 뜨네요. 혹시 문제없는 코드일까요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
곳감(모래시계) 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 다음과 같이 코딩을 작성했는데, rotation 이 자꾸 이상하게 되네요.. 도대체 어느부분이 잘못된건지 잘 모르겠습니다 ㅜㅜn = int(input()) a = [list(map(int, input().split())) for _ in range(n)] m = int(input()) temp = [] for _ in range(m): h, t, k = map(int, input().split()) temp = a[h-1] #temp에 원래 값 저장 if t == 0: for i in range(n): #temp에서 꺼내와 index값 변경 if i-k < 0: a[h-1][i] = temp[i-k+n] else: a[h-1][i] = temp[i-k] else: for i in range(n): if i+k >= n: a[h-1][i] = temp[i+k-n] else: a[h-1][i] = temp[i+k] print(a) sum = 0 s = 0 e = n for i in range(n): for j in range(s, e): sum += a[i][j] if n//2 > i: s += 1 e -= 1 else: s -= 1 e += 1 print(sum)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
문자열 슬라이싱
안녕하세요, 문자열 슬라이싱 관련 질문이 있습니다.문자열 a = 'abcde'가 있다고 할 때, print(a[::-1]) 을 실행하면 'edcba'로 문자열이 반대로 나오지만print(a[1:4:-1])처럼 [ : :-1]에서 시작하는 칸과 끝나는 칸에 그 어떤 수를 넣어도프린트가 되지 않습니다.유사하게 -1대신 -2, 등 음수는 되지 않는다는 것을 확인하였습니다.print(a[1:4:2])는 되는데 print(a[1:4:-1])이 되지 않는 이유는 무엇인가요?[ : : ] 에서 마지막에 음수를 넣으면 그 앞 두 칸에는 숫자를 넣을 수 없는 것인가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
투포인트/슬라이딩 윈도우 관련
혹시 투포인터/슬라이딩 윈도우 부분도 강의에 있나요?자바 커리큘럼에는 보니까 있는데 파이썬에는 없어서요. 혹시 추가될 예정이 있나요? 아니면 혹시 커리큘럼속에 포함 되어있는데 제가 못찾는 건가요?감사합니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
4챕터 증가수열문제
사소한거긴 한데 while문 조건이 lt<=rt인데만약에 input이 61 3 5 6 4 2이렇게 주어지면 while문이 안 끝나서요.. 차피 judge.exe 돌리면 맞게 나오긴 하는데 이런건 신경 안 쓰고 풀어도 되나요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
실제 비슷한 문제를 sort()함수 사용하여 푼다면
코딩테스트 실전에서 sort()를 이용하여 풀고 제출해버리면영상에서 설명해주신 방법으로 해결한 답에 비해 떨어질 확률이 높아질까요?두 가지 방법으로 문제 풀어 보았고 둘 다 한번에 성공하긴 했습니다 다만, 실전문제에서 sort()함수를 사용하지 말라는 조건이 없다면 굳이 영상에서의 방법을 써야하는지도 궁금합니다.실전코테 시 문제가 여러개 나올 수도 있고 심적 압박(?)으로 반복문을 써야한다고 알고 있어도 긴장해서 sort()쓸 것 같아서요 ㅜㅜ