25%
57,750원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
혹시 이렇게 풀어도 되려나요..?
import sys sys.stdin=open('input.txt','rt') n=int(input()) a=list(map(int,input().split())) k=n b=[n] for i in range(-2,-n-1,-1): k-=1 b.insert(a[i],k) print(b) 뒤에서부터 접근하는 방식으로 풀어봤습니다.. 그리고 혹시나 해서 여쭤보는건데, k=n을 생략하고 그냥 쓰면 혹시 나중에 버그같은게 걸릴 수 있는지 궁금합니다. 마치 밑의 예시처럼요.. import sys sys.stdin=open('input.txt','rt') n=int(input()) a=list(map(int,input().split())) b=[n] for i in range(-2,-n-1,-1): n-=1 b.insert(a[i],n) print(b)
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질문 두가지 있습니다!
안녕하세요 강의 잘 듣고 있습니다! 1. 입력받을때, n=int(input()) meeting=[] for _ in range(n): s,e=map(int,input().split()) meeting.append((s,e)) 의 방식을 사용하신 이유가 있을까요...? 밑에 내용처럼 하면, 변수도 줄어들어 더 빠르게 처리할 수 있을것 같은데, 혹시 윗 내용처럼 변수를 입력하고 그 변수를 다시 배열에 집어넣으신 이유가 있는지 궁금합니다. n=int(input()) room=[] for _ in range(n): room.append(tuple(map(int,input().split()))) 2. 리스트가 아닌 튜플 구조를 사용하신 이유가 있을까요? 계속 리스트만 사용하다가 튜플을 사용하려니 뭔가 좀 어색해서 여쭤봅니다!
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
lt설정에 관한 질문
안녕하세요? 강의 잘 보고 있습니다. 다름이아니라, lt와 rt를 설정할때, 각각 디스크 용량의 최대/최소로 알고있는데, 선생님께서는 lt를 1로 설정하였는데 그게 아니라 음악들의 최소값인 min(music)이 들어가야 맞지 않나요..? 아니라면 무엇을 제가 놓쳤는지 설명해주시면 감사하겠습니다..
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
ch 를 굳이 만들어야 하는 이유를 잘 모르겠습니다.
arr = [list(map(int,input().split())) for _ in range(10)] for i in range(10): if arr[9][i] == 2: start = i break def dfs(r,c): if r == 0: print(c) return if 0<= c-1 and arr[r][c-1] == 1: arr[r][c-1] = 2 dfs(r,c-1) elif c+1 < 10 and arr[r][c+1] == 1: arr[r][c+1] = 2 dfs(r,c+1) elif 0<= r-1 and arr[r-1][c] == 1: arr[r-1][c] = 2 dfs(r-1,c) dfs(9,start) 안녕하세요 선생님 질문있어서 글 남깁니다! 선생님의 코드처럼 ch를 만드는 경우 메모리를 더 잡아먹을 것 같은데, 방문한 board의 값을 1이 아닌 값으로 바꾸면 메모리적으로 더 효율적이지 않을까요? 혹시 문제가 있을까요
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
4,5번 시간초과
import queue dr = [0,-1,0,1] dc = [-1,0,1,0] m,n = map(int,input().split()) arr = [list(map(int,input().split())) for _ in range(n)] q = queue.Queue() res = 0 for i in range(n): for j in range(m): if arr[i][j] == 1: q.put((i,j)) while q.qsize()>0: now = q.get() for k in range(4): nr = now[0]+dr[k] nc = now[1]+dc[k] if 0<= nr < n and 0<= nc < m and arr[nr][nc] == 0: arr[nr][nc] = arr[now[0]][now[1]] + 1 q.put((nr,nc)) c = False for i in range(n): for j in range(m): if arr[i][j] == 0: c = True break; else: res = max(res, arr[i][j]) if c == True: print(-1) else: print(res-1) 4번 5번에서 자꾸 시간초과가 뜨는데 컴퓨터 사양 문제일까요? 직접 cmd에서 구동시켜보면 답은 맞습니다..
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
합이 같은 부분집합 질문입니다.
안녕하세요. 항상 답변해주셔서 감사합니다. 이번엔 합이 같은 부분집합 문제 질문입니다. 테스트5개 중 4번이 틀렸다고 나오는데요, 코드가 어디서 이상이 있는지 잘 모르겠습니다. import sys from collections import deque import heapq as hq #sys.stdin= open("input.txt","r") def DFS(v): if v>=7: if sum(llist)==sum(rlist): print("YES") return else: llist.append(alist[v-1]) DFS(v+1) rlist.append(alist[v-1]) DFS(v+1) if __name__ == '__main__': answer = "NO" llist = [] rlist = [] n = int(input()) alist = list(map(int, input().split())) #print(alist) DFS(1) v가 7 이상인경우 테스트 확인을 진행했습니다. 만약 Yes가 안나올 경우 NO로 고정시켰습니다. 문제점발견해주시면 감사합니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
개수 문제
import sys from collections import deque #sys.stdin = open("test.txt", "r") m,n = map(int,input().split()) #m,n 순서 board = [list(map(int,input().split())) for _ in range(n)] dx = [-1,0,1,0] dy = [0,1,0,-1] q = deque() cnt = 0 for i in range(n): for j in range(m): if board[i][j] == 1: q.append((i,j)) if len(q) == 0: print(-1) else: while q: size = len(q) for _ in range(size): temp = q.popleft() for k in range(4): x = temp[0] + dx[k] y = temp[1] + dy[k] if 0<=x<=n-1 and 0<=y<=m-1 and board[x][y] == 0: q.append((x,y)) board[x][y] = 1 cnt += 1 flag = True for r in range(n): for c in range(m): if board[r][c] == 0: flag = False print(-1) break if flag == False: break if flag: print(cnt) 저는 큐의 길이만큼 for문을 돌면서 cnt를 하나씩 증가시킨 후 cnt를 출력했는데 정답이 하나씩 증가되서 나옵니다. 어느 부분이 논리적으로 잘못됐는지 찾지 못해서 질문드립니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
BFS방식으로 풀었을 때 5번 시간초과..
import queue import copy dx = [0,-1,0,1] dy = [-1,0,1,0] n = int(input()) arr = [list(map(int,input().split())) for _ in range(n)] min = 2147000000 max = -min cnt = 0 for i in range(n): for j in range(n): if arr[i][j] > max: max = arr[i][j] if arr[i][j] < min: min = arr[i][j] start = min+1 end = max for val in range(start,end): q = queue.Queue() region = 0 tmp = copy.deepcopy(arr) for i in range(n): for j in range(n): if tmp[i][j] > val: q.put((i,j)) tmp[i][j] = 0 region += 1 while q.qsize() > 0: now = q.get() for k in range(4): nx = now[0]+dx[k] ny = now[1]+dy[k] if 0<= nx < n and 0<= ny < n and tmp[nx][ny] > val: tmp[nx][ny] = 0 q.put((nx,ny)) if region > cnt: cnt = region print(cnt) BFS방식으로 풀었을 때 5번에서 시간초과가 뜹니다 ㅠㅠ 위 소스처럼 tmp = copy.deepcopy(arr) 방식 말고 ch =[[0]*n for _ in range(n)] 로 체크만 하는 경우에도 똑같이 5번에서 시간 초과가 뜨네요.. 혹시 개선할만한 부분이 있을까요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
질뭉이요
입력예제 1번으로 하면 평균이 74고 평균점수에 가까운 학생은 1번 인덱스의 73과 6번 인덱스의 75와 8번 인덱스의 75 3가지가 1점차로 평균에 가장 가깝고 답이되는 점수가 여러가인 경우로 번호가 빠른 학생의 번호는 1번 인덱스번호에 해당하는 두번째 학생 아닌가요..?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
강의에서 설명하신게 조금이해가 안갑니다.
5분40초쯤 설명하시는거 들어보면 res를 2로 설정하시고 각 마굿간의 거리가 2보다 크거나 같아야된다고 하시는데 res는 2이고 마굿간은 1 4 8의 형태인데 그럼 답은 3이 나와야되는데 res는 2로 설정되어있으므로 나중에 오류가 날 수 있지 않나요?? 물론 그 다음에 res가 3으로 되고 답은 맞게나오지만 이렇게 할 경우에 오류의 가능성이 아예 없나요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
파일 open 이 안되요..
선생님이 알려주신 방식으로 import sys sys.stdin=open("input.txt","rt") n=int(input()) print(n) 로 돌려보면 그냥 input()만 넣었을때와 동일한 출력이 나오네요 ex) input.txt 파일에 5라는 값 저장이 되어 있어도 출력은 제가 직접 입력하라고 되네요.. 설정에 문제가 있는걸까요..? 강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
시간 초과
import sys #sys.stdin = open("in4.txt","r") n = int(input()) clist = [] for i in range(n): temp = int(input()) clist.append(temp) res = float('inf') def DFS(v,a,b,c): global res if v == n: if a != b and b != c and c != a: temp = max(a,b,c) - min(a,b,c) if temp < res: res = temp else: DFS(v+1,a+clist[v],b,c) DFS(v+1,a,b+clist[v],c) DFS(v+1,a,b,c+clist[v]) DFS(0,0,0,0) print(res) 저는 위와 같이 코드를 짜보았는데 4,5번에서 계속 시간 초과가 납니다. 선생님 코드의 효율이 더 좋은것인지 궁금하고 제가 짠 코드가 논리적으로 맞는지 궁금합니다.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
문제 조건질문입니다.
코드를 보면 if Count(mid) <=m이라는 코드가 있는데 그럼 문제에서 9 3 이렇게 주어졌을 때 꼭 3이 아니어도 되는건가요? 2나 1이어도 정답이 가능한가요? 문제에 이런설명이 없어서요
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
스도쿠 질문입니다.
안녕하세요. 먼저 저번 질문에 답해주신거 감사합니다. 이번에는 스도쿠 질문입니다. 저는 스도쿠 문제중 저렇게 초록색 부분을 강사님과는 다르게 좌표로 찍어서 할려고 했습니다. 예를들어, 빨간색 동그라미 7인경우 [1,1]에서 dx = [-1,-1,-1,0,0,0,1,1,1] dy = [-1,0,1,-1,0,1,-1,0,1] 로 설정한다음 checklist,append하는 방식으로 했습니다. 이 후 sorted를 통하여 1~9까지가 정확히 맞으면 True, 아니면 False를 반환했습니다. -------코드---------------- checkpointx = [1,1,1,4,4,4,7,7,7] checkpointy = [1,1,1,4,4,4,7,7,7] checkanswer = [1,2,3,4,5,6,7,8,9] dx = [-1,-1,-1,0,0,0,1,1,1] dy = [-1,0,1,-1,0,1,-1,0,1] for i in checkpointx: for j in checkpointy: for k in range(9): #print(k) checklist.append(a[i+dx[k]][j+dy[k]]) print(checklist) checklist = sorted(checklist) if checklist != checkanswer: ch3 = False checklist = [] ------출력---------- print(checklist) [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [6, 2, 8, 1, 3, 9, 7, 5, 4] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [5, 7, 9, 4, 6, 8, 2, 3, 1] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [3, 9, 1, 4, 6, 8, 7, 2, 5] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [5, 4, 2, 9, 1, 7, 8, 6, 3] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [7, 8, 6, 3, 5, 2, 9, 1, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [2, 3, 7, 6, 1, 9, 8, 5, 4] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [4, 8, 1, 2, 7, 5, 3, 9, 6] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [6, 9, 5, 8, 4, 3, 1, 2, 7] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] [1, 4, 3, 5, 7, 2, 9, 8, 6] 이렇게 3개+3개씩 같은게 나옵니다. 정답은 맞았습니다만, 여기서 수정을 뭘 해야할지 헷갈립니다. 제가 하고싶은건 한번만 확인할려고 하는겁니다. 이렇게 6번확인하지않고싶습니다. 강사님이 도와주시면 정말 감사합니다. 몇시간째 싸메는데 생각이 안나네요.
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
맥은 채점 기능 사용이 불가능한가요?
맥은 채점 기능 사용이 불가능한가요?
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
dict의 key를 tuple로 두었을때 tuple에 접근하는 과정에서의 에러
카드 역배치 문제를 해싱을이용해 풀고자 하였고, 이상한 에러가 나는데 아무리 구글링을 하여도 해결할 수 없어서 질문드립니다 ㅠㅠ TypeError: 'int' object is not subscriptable <- 이렇게 뜨는데, x 를 출력시켰더니 (5,10), x[1] 을 출력시키니 10이 잘만 출력 됩니다 ㅠㅠ 답변주신다면 정말 감사드리겠습니다 ㅠㅠㅠ s,e = map(int,input().split()) for x in dict.keys(): print(x) if x==(s,e): if dict.get(x,0)==0: break else: #어쩌구 else: if s<=x[1]: ####에러나는 부분 dict[(s,e)] = 0 #저쩌구 else: dict[(s,e)] = 1
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
if문 마지막에 else:
money=c*100 c가 가장 큰 값인지 알수 없기에 money=max(a,b,c)*100 이게 맞지 않을까요
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
Chapter 5 쇠막대기 문제 질문입니다.
강의와 관련있는 질문을 남겨주세요.• 강의와 관련이 없는 질문은 지식공유자가 답변하지 않을 수 있습니다. (사적 상담, 컨설팅, 과제 풀이 등)• 질문을 남기기 전, 비슷한 내용을 질문한 수강생이 있는지 먼저 검색을 해주세요. (중복 질문을 자제해주세요.)• 서비스 운영 관련 질문은 인프런 우측 하단 ‘문의하기’를 이용해주세요. (영상 재생 문제, 사이트 버그, 강의 환불 등) 질문 전달에도 요령이 필요합니다.• 지식공유자가 질문을 좀 더 쉽게 확인할 수 있게 도와주세요.• 강의실 페이지(/lecture) 에서 '질문하기'를 이용해주시면 질문과 연관된 수업 영상 제목이 함께 등록됩니다.• 강의 대시보드에서 질문을 남길 경우, 관련 섹션 및 수업 제목을 기재해주세요. • 수업 특정 구간에 대한 질문은 꼭 영상 타임코드를 남겨주세요! 구체적인 질문일수록 명확한 답을 받을 수 있어요.• 질문 제목은 핵심 키워드를 포함해 간결하게 적어주세요.• 질문 내용은 자세하게 적어주시되, 지식공유자가 답변할 수 있도록 구체적으로 남겨주세요.• 정확한 질문 내용과 함께 코드를 적어주시거나, 캡쳐 이미지를 첨부하면 더욱 좋습니다. 기본적인 예의를 지켜주세요.• 정중한 의견 및 문의 제시, 감사 인사 등의 커뮤니케이션은 더 나은 강의를 위한 기틀이 됩니다. • 질문이 있을 때에는 강의를 만든 지식공유자에 대한 기본적인 예의를 꼭 지켜주세요. • 반말, 욕설, 과격한 표현 등 지식공유자를 불쾌하게 할 수 있는 내용은 스팸 처리 등 제재를 가할 수 있습니다. 쇠막대기 문제하다가 질문이 생겨서 질문 드립니다. 제가 처음 접근한 방식인데요 이렇게 작성을 하게 되면 첫번째 else구문 안쪽에 if 절에서 IndexError: list index out of range라는 에러가 발생하더군요. 앞전 문제와 같이 temp리스트 안에 마지막 원소를 확인하기 위해서 [-1]을 사용했는데 여기서 왜 문제가 발생하는지 잘 모르겠습니다. 강사님께서는 이번 강의에서 num[i-1]을 사용해서 마지막 원소를 검색하시더라구요. 앞 전강의와 이번 강의에서 stack 리스트 안에 마지막 원소를 검색하는 방법이 다른 이유와 여기서는 왜 적용이 안되는지 설명해 주실수 있으신가요? 항상 강의 잘 듣고 있습니다. 감사합니다. import syssys.stdin = open('input.txt')num = input()cnt = 0temp = []for i in range(len(num)): if num[i] == '(': temp.append(num[i]) else: temp.pop() if temp[-1] == '(': cnt += len(temp) else: cnt += 1print(cnt)
- 해결됨파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
수의 범위와 뽑는개수가 많은경우
안녕하십니까 선생님, 수들의 조합문제를 풀다가 비슷한 문제를 봐서 풀어보려다가 잘 안되서 질문드립니다. 아래의 문제는 수의 범위가 1000개까지 늘어나있고 뽑는 수는 47개까지 늘어나있습니다. 최악의 경우 경우의 수가 엄청 많아지는데 어떻게 가지를 쳐내야 할지 모르겠습니다. https://devth-preview.goorm.io/exam/53763/%EC%A3%BC-%EA%B5%AC%EB%A5%B4%EB%AF%B8-%EC%8B%A0%EC%9E%85-%EA%B0%9C%EB%B0%9C%EC%9E%90-%EA%B3%B5%EA%B0%9C%EC%B1%84%EC%9A%A9-%EC%BD%94%EB%94%A9%ED%85%8C%EC%8A%A4%ED%8A%B8/quiz/4?_ga=2.908337.163205682.1599062036-1973470052.1555686572
- 미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
재귀함수의 매개변수로 배열을 넘기면 안되나요??
문제에서 res 나 ch 배열을 전역변수로 생성하여서 사용하는데 혹시 매개변수로 배열을 넘겨서 이용하면 안되나요?? cnt=0 DFS(0,[0]*(n+1),[0]*m) print(cnt) 이런식입니다. 이전 동전교환문제에서는 sum 이라는 변수를 전역변수로 사용하지 않았는데 여기서는 전역변수로 사용하는 이유가 궁금합니다. 추가로 res=[0]*n 이 아니라 res=[0]*m 아닌가요??