728x90
반응형
코딩테스트 해설
문제 유형 : 수학, 조합론, 백트래킹, 재귀
작성 코드
import sys
from itertools import combinations
def lotto(numbers):
for combination in combinations(numbers, 6):
print(' '.join(map(str, combination)))
print()
while True:
line = list(map(int, sys.stdin.readline().rstrip().split()))
k = line[0]
if k == 0:
break
numbers = line[1:]
lotto(numbers)
접근 방식
- itertools의 combinations 를 사용하였습니다.
- 각 케이스들을 입력 받도록 하고, 해당 입력라인을 split 하여 배열의 형태로 만들어 0번 인덱스가 0이라면, 끝내도록 하였습니다.
개선 사항
- input을 매번 저렇게 입력 하도록 하니 너무 길어지는 것 같아, input을 sys.stdin.readline으로 재정의 해도 될 것 같습ㄴ다.

728x90
반응형
'알고리즘' 카테고리의 다른 글
[ Python ] 토스 : 멋쟁이 숫자 (0) | 2024.10.11 |
---|---|
[ Python ] 1208번 : 부분수열의 합 2 (1) | 2024.08.21 |
[ Python ] 15657번 : N과 M (8) (0) | 2024.08.20 |
[ Python ] 15655번 : N과 M (6) (0) | 2024.08.20 |
[ 알고리즘 ] 백트래킹(BackTracking) (0) | 2024.08.16 |