N과 M 6번과 크게 다르지 않다
N과M 6번을 보고싶으면? N과M(6) 보러가기
- 수열이 오름차순은 아니지만, 조건을 만족하는 수열은 오름차순이다.
- 중복 가능하다.
출력이 오름차순이기 때문에 정렬 을 먼저 한 다음에 배열에서 순서대로 탐색한다.
재귀함수 를 이용하여 조건에 맞는 경우 정답배열에 한 개 씩 추가하여 배열 원소의 갯수가 M이 되는 경우에만 출력한다.
#N과M (7)
# N개중에 M개 고른 수열
# N과M (6)에서 중복가능 조건 추가 , 오름차순 조건 없음
N,M=map(int,input().split())
lst=list(map(int,input().split()))
def solve(num,ans):
if len(ans)==num:
for i in ans:
print(lst[i],end=' ')
print()
return
for i in range(0,len(lst)):
solve(num,ans+[i])
lst.sort()
for i in range(N):
solve(M,[i])