위 코드를 실행해보면 중복되지 않는다는 것 알 수 있을 겁니다.
작성
·
160
2
안녕하세요 강사님 강의 잘듣고있습니다 감사합니다~!
질문할 것이 있는데요.
삼중 for문에서 range의 범위가 모두 n으로 끝나는데
for i in range(n-2):
for j in range(i+1, n-1):
for k in range(j+1, n):
정확한 답을 내기 위해서는 범위를 위 처럼 가서 카드를 중복으로 뽑지않도록 보장하여야 할 것 같은데 혹시 어떻게 생각하시나요?
답변 3
0
0
저도 같은 질문이었는데,
i가 3이되면 range(i+1,n) -> range(4,5)
j가 4가 되면 range(j+1,n) -> range(5,5)
가 되어서 바깥 for문은 돌지만 가장 안쪽 for문이 실행되지 않는거군요.
0
감사합니다^^
현묵님 코드처럼 하는게 제일 좋습니다.
모두 n으로 끝나도 중복으로 뽑힐 일은 없기 때문에 편하게 다 n으로 했던것 같습니다.
for i in range(5):
for j in range(i+1, 5):
for k in range(j+1, 5):
print(i, j, k)
위 코드를 실행해보면 중복되지 않는다는 것 알 수 있을 겁니다.