반응형
문제
https://www.acmicpc.net/problem/15654
15654번: N과 M (5)
N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열
www.acmicpc.net
코드
n, m = map(int, input().split())
nums = list(map(int, input().split()))
s = []
def dfs():
if len(s) == m:
print(' '.join(map(str,s)))
return
for i in sorted(nums):
if i not in s:
s.append(i)
dfs()
s.pop()
dfs()
설명
https://looancheong.tistory.com/147
[파이썬, Python] 백준 15649: N과 M (1)
문제 https://www.acmicpc.net/problem/15649 15649번: N과 M (1) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야
looancheong.tistory.com
이 문제와 유사하므로 큰 틀의 설명은 생략한다.
백트래킹을 진행하는 수의 범위를 sorted(nums)로 바꿔서 풀이하면 된다.
반응형
'개발 연습장 > 백준 문제풀이' 카테고리의 다른 글
[파이썬, Python] 백준 1072: 게임 (0) | 2023.07.18 |
---|---|
[파이썬, Python] 백준 15655: N과 M (6) (0) | 2023.07.17 |
[파이썬, Python] 백준 1940: 주몽 (0) | 2023.07.13 |
[파이썬, Python] 백준 10026: 적록색약 (0) | 2023.07.12 |
[파이썬, Python] 백준 11000: 강의실 배정 (0) | 2023.07.11 |