def combi(arr,r):
for i in range(len(arr)):
if r == 1:
yield [arr[i]]
else:
for next in combi(arr[i+1:],r-1):#뒤의것
yield [arr[i]]+next
def permu(array, r):
for i in range(len(array)):
if r == 1:
yield [array[i]]
else:
for next in permu(array[:i]+array[i+1:], r-1): #뺀것
yield [array[i]] + next
'알고리즘' 카테고리의 다른 글
비트연산 / 비트마스킹 (0) | 2022.10.27 |
---|---|
재귀함수에 대한 분석! (0) | 2022.05.09 |
런타임에러가 발생하는 여러가지 이유들 요약! (0) | 2022.04.27 |
청소년 상어 (0) | 2022.04.23 |
SET 의시간복잡도 + permutation + combination (0) | 2022.04.17 |