728x90
[백준알고리즘] 15652번: N과 M (4) -Python
https://www.acmicpc.net/problem/15652
비 내림차순이라는 거 말고는 별로 달라진 게 없다.
앞에서 썼던 itertools는 사용하지 않았다. itertools의 combinations_with_replacement를 사용하면 똑같이 출력할 수 있다.
근데 여기서는 사용하지 않아도.. 뭐... 넘어가도록 하자!
import sys
def testCase():
input_val = list(map(int, sys.stdin.readline().split()))
global N, M
N, M = input_val
def solve(remain, result=[]):
if len(result) == M:
for r in result:
print(r, end=" ")
print()
return
for idx in range(len(remain)):
result.append(remain[idx])
solve(remain[idx:], result)
result.pop(-1)
if __name__ == "__main__":
testCase()
solve(list(range(1, N+1)))
잘못된 점이나 부족한 점 지적해주시면 감사하겠습니다
728x90
'algorithm > 백준알고리즘' 카테고리의 다른 글
[백준알고리즘] 2580번: 스도쿠 -Python (1) | 2019.12.30 |
---|---|
[백준알고리즘] 9663번: N-Queen -Java (0) | 2019.12.27 |
[백준알고리즘] 15651번: N과 M (3) -Python (0) | 2019.12.27 |
[백준알고리즘] 15650번: N과 M (2) -Python (0) | 2019.12.27 |
[백준알고리즘] 15649번: N과 M (1) -Python (0) | 2019.12.24 |