https://www.acmicpc.net/problem/6603
from itertools import combinations
while(1):
inp = list(map(int,input().split()))
number = inp[0]
if number==0:
break
inp= inp[1:]
arr=inp[:]
tmp = list(combinations(arr,6))
for i in range(len(tmp)):
for j in range(6):
print(tmp[i][j], end=' ')
print()
print()
입력이 7 1 2 3 4 5 6 7 이면 맨 앞 숫자를 number에 저장을 하고
나머지는 슬라이싱을 이용해 arr에 따로 저장한다.
combinations( 사용할 리스트, 조합해서 나오는 원소 개수) 라는 조합함수를 사용할 것입니다.
print()에는 줄바꿈까지 자동으로 포함되기 때문에 end=' '를 이용해 맨끝자리는 줄바꿈이 아니라 띄어쓰기로 바뀌게 되고 모든 조합을 출력하면 print()를 이용해 줄을 바꾼다.
'자기개발👨💻 > 코딩 알고리즘' 카테고리의 다른 글
[python] 백준 1789 블랙잭 (0) | 2020.08.29 |
---|---|
[python] 백준 2607 로마 숫자 (실패70 성공 20 ?? 10) (0) | 2020.08.27 |
[c++] 백준 1652 누울 자리를 찾아라 (0) | 2020.08.15 |
[c++] 백준 2669 직사각형 네개의 합집합의 면적 구하기 (0) | 2020.08.11 |
[c++] 백준 1912 연속합 (0) | 2020.08.11 |
[C++] 백준 12919 A와 B 2 (0) | 2020.08.08 |