반응형
해결 방법
이 답변은 괜찮지 만 아래 skovorodkin의 답변을 권장합니다.
>>> def partition(number):
... answer = set()
... answer.add((number, ))
... for x in range(1, number):
... for y in partition(number - x):
... answer.add(tuple(sorted((x, ) + y)))
... return answer
...
>>> partition(4)
set([(1, 3), (2, 2), (1, 1, 2), (1, 1, 1, 1), (4,)])
모든 순열 (예 : (1, 3) 및 (3, 1))을 원하면 answer.add (tuple (sorted ((x,) + y))
를 answer.add ((x,) + y)
참조 페이지 https://stackoverflow.com/questions/10035752
반응형
'파이썬' 카테고리의 다른 글
파이썬에서 문자열의 일부를 바꾸시겠습니까? (0) | 2021.02.21 |
---|---|
파이썬 컬렉션의 항목 액세스. 인덱스 별 OrderedDict (0) | 2021.02.21 |
파이썬 여러 열에서 고유 한 sqlalchemy (0) | 2021.02.20 |
파이썬 바이트 문자열 대 유니 코드 문자열. 파이썬 (0) | 2021.02.20 |
파이썬을 사용하여 CPU 수를 찾는 방법 (0) | 2021.02.20 |
댓글