백준 15656 파이썬

강한개발자·2021년 9월 26일
0

코딩왕이 되기 위해

목록 보기
10/15

문제

N 과 M (7)

백준 15656

풀이

N과 M 6번과 크게 다르지 않다

N과M 6번을 보고싶으면? N과M(6) 보러가기

  1. 수열이 오름차순은 아니지만, 조건을 만족하는 수열은 오름차순이다.
  2. 중복 가능하다.

출력이 오름차순이기 때문에 정렬 을 먼저 한 다음에 배열에서 순서대로 탐색한다.
재귀함수 를 이용하여 조건에 맞는 경우 정답배열에 한 개 씩 추가하여 배열 원소의 갯수가 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])

결과 정답

profile
강한친구의 코딩 성장기

0개의 댓글