반응형
https://www.acmicpc.net/problem/15651
15651번: N과 M (3)
한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해
www.acmicpc.net
내 코드
import sys
input = sys.stdin.readline
n, m = map(int, input().split())
tmp = []
def dfs():
if len(tmp) == m:
print(' '.join(map(str, tmp)))
return
for i in range(1, n+1):
tmp.append(i)
dfs()
tmp.pop()
dfs()
dfs, 중복 순열
중복해서 수가 나오기 위해서는 15649에서 만들었던 코드에서 visited와 조건문을 없애면 된다고 생각했다.
visited로 방문한 수는 다시는 방문 안하게 만들었기 때문이다.
또 방문할 수 있도록 만들었더니 바로 맞았다.
반응형
'코딩테스트 대비 > 백준(BOJ)' 카테고리의 다른 글
| [Python][백준/BOJ] 15654번 : N과 M (5) (0) | 2023.06.26 |
|---|---|
| [Python][백준/BOJ] 15652번 : N과 M (4) (0) | 2023.06.26 |
| [Python][백준/BOJ] 15650번 : N과 M (2) (0) | 2023.06.26 |
| [Python][백준/BOJ] 15649번 : N과 M (1) (0) | 2023.06.25 |
| [Python][백준/BOJ] 4673번 : 셀프 넘버 (0) | 2023.06.25 |