BOJ

백준 15650. N과 M (2) [Python]

Hoo_Dev 2022. 6. 3. 16:22
 

15650번: N과 M (2)

한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해

www.acmicpc.net

def recur(lev, next_i):
    if lev == M:
        print(*path)
        return
    for i in range(next_i, N):
        path.append(i+1)
        recur(lev+1, i+1)
        path.pop()

N, M = map(int, input().split())
path = []
recur(0, 0)

path 리스트 안에 값을 저장 할 때, 본인을 포함하지 않고, 본인 다음 수 부터 저장을 해야하므로 next_i 를 함수에 같이 저장해서 넘겨줘야 한다.

'BOJ' 카테고리의 다른 글

백준 15652. N과 M (4) [Python]  (0) 2022.06.03
백준 15651. N과 M (3) [Python]  (0) 2022.06.03
백준 15649. N과 M (1) [Python]  (0) 2022.06.03
백준 11724. 연결 요소의 개수 [Python]  (0) 2022.06.02
백준 1302. 베스트셀러 [Python]  (0) 2022.06.02