백준 Algorithm
[백준 15655 N과 M (6) 문제] PYTHON
harry595
2021. 8. 12. 23:30
전의 문제에 더해 result 마지막 인자와 현재 값을 비교하는 구문만을 추가하면 된다.
A, B = map(int, input().split())
C = list(map(int, input().split()))
C.sort()
result = []
visit = [False]*A
def backtracking(depth, A, B):
if depth == B:
print(' '.join(map(str, result)))
return
for i in range(A):
if visit[i] == True:
continue
if len(result) > 0:
if result[-1] > C[i]:
continue
visit[i] = True
result.append(C[i])
backtracking(depth+1, A, B)
result.pop()
visit[i] = False
backtracking(0, A, B)