from itertools import combinations
import sys
input = sys.stdin.readline
while True:
s=list(map(int,input().split()))
k=s.pop(0)
result=list(combinations(s,6))
if k==0:
break
for i in result:
for j in i:
print(j,end=' ')
print()
print()
접근 방법
itertools는 파이썬에서 리스트의 조합을 구해주는 유용한 라이브러리이다.
permutations
하나의 리스트 안에서 조합을 구할 때 사용, 순서를 고려한다.(순열)
from itertools import permutations
from itertools import combinations
from itertools import product
#test
from itertools import permutations
from itertools import combinations
from itertools import product
arr=['가','나','다']
num=[1,2]
print('permutations: ', list(permutations(arr,2)))
print('combinations: ', list(combinations(arr,2)))
print('product: ', list(product(arr,num)))
print('repeat product: ', list(product(arr,repeat=2)))
#result
permutations: [('가', '나'), ('가', '다'), ('나', '가'), ('나', '다'), ('다', '가'), ('다', '나')]
combinations: [('가', '나'), ('가', '다'), ('나', '다')]
product: [('가', 1), ('가', 2), ('나', 1), ('나', 2), ('다', 1), ('다', 2)]
repeat product: [('가', '가'), ('가', '나'), ('가', '다'), ('나', '가'), ('나', '나'), ('나', '다'), ('다', '가'), ('다', '나'), ('다', '다')]