강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

밥먹고살자님의 프로필 이미지
밥먹고살자

작성한 질문수

파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)

8. 순열 구하기(DFS)

res 의 크기설정 질문드립니다.

작성

·

199

0

def dfs(L):
global cnt
if L==m:
for i in range(L):
print(res[i],end=' ')
print()
cnt+=1

else:
for i in range(1,n+1):
if ch[i]==0:
ch[i]=1
res[L]=i
dfs(L+1)
ch[i]=0


n,m=map(int,input().split())
cnt=0
res=[0]*(m+1)
#여기res의 크기는 n이아니라 m+1 이 들어가야 맞는게 아닌가 질문 드립니다!
n=3,m=2 에서 3개중에 2개를 넣는 것이니까 들어갈 수는 m+1이 되었을 때 출력 되게 하는 것이 맞다고 생각합니다.
 
ch=[0]*(n+1) # 또 여기 ch가 왜 0을 포함해서 만들어야하는지 이해가 가지 않습니다.123 중하나니까 체크리스트를 1부터 만들어야 하는 것 아닌가요..ㅠ
 
dfs(0)
print(cnt)

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

안녕하세요^^

네 맞습니다.

밥먹고살자님의 프로필 이미지
밥먹고살자

작성한 질문수

질문하기