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

장성범·2022년 1월 16일

https://www.acmicpc.net/problem/15650

Problem

N과 M이 주어졌을때 M만큼의 중복되지 않고 오름차순 수열을 찾는 문제

Solution

DFS로 visited방문을 이용하여 풀수도 있으나시간이 비효율적이라 재귀 함수 파라메터를 이용하여 dfs를 사용

Python Code

import sys

N,M=map(int,sys.stdin.readline().split())
result=[]


def dfs(start):
    if len(result)==M:
        for re in result:
            print(re,end=' ')
        print()
        return
    else:
        for i in range(start,N+1):
            result.append(i)
            dfs(i+1)
            result.pop()


dfs(1)

0개의 댓글