본문 바로가기

알고리즘/백준 ~ 단계별 풀어보기

백준 15650 "N과 M (2)"

파이썬

import itertools
import sys

n , m  = map(int, sys.stdin.readline().split())

ans_list = []

def dfs():
    if len(ans_list) == m:
        print(" ".join(map(str, ans_list)))
    
    for i in range(1, n+1):
        if not ans_list:
            ans_list.append(i)
            dfs()
            ans_list.pop()
        elif i not in ans_list and i > ans_list[-1]:
            ans_list.append(i)
            dfs()
            ans_list.pop()
            
dfs()

'알고리즘 > 백준 ~ 단계별 풀어보기' 카테고리의 다른 글

백준 15652번 "N과 M (4)"  (0) 2022.08.15
백준 15651번 "N과 M(3)"  (0) 2022.08.15
백준 15649번 "N과 M"  (0) 2022.08.15
백준 3009 "네 번째 점"  (0) 2022.08.13
백준 1085번 "직사각형에서 탈출"  (0) 2022.08.13