[백준] 15650번 (python 파이썬) N과 M(2)
2021. 3. 23. 01:33ㆍ발돋움/알고리즘
728x90
반응형

n, m = map(int, input().split())
result = []
def num(idx, n, m, check):
if idx == m:
print(' '.join(map(str, result)))
return
for i in range(1, n + 1):
if check >= i:
continue
result.append(i)
num(idx + 1, n, m, i)
result.pop()
num(0, n, m, 0)
728x90
* 문제의 입,출력 예시를 잘보면 앞의 인덱스보다 뒤의 인덱스 값이 커야함
* idx는 수열의 길이로 m개를 골랐을때 join으로 공백을 넣어 출력해준다.
* 함수의 두번째 if문을 보면 check >= x조건이 있는데 check >= x는 중복방지이다.
* 재귀함수 작동원리가 이해가 안간다면 아래를 참고(알아보기 힘들 수 있음)!
백준 15651 python ,N과M(3)
n, m = map(int, input().split()) result = [] def num(idx, n, m): if idx == m: print(' '.join(map(str, result))) return for i in range(1, n + 1): result.append(i) num(idx + 1, n, m) result.pop() num..
happytum.tistory.com
728x90
반응형
'발돋움 > 알고리즘' 카테고리의 다른 글
| [백준] 3085번 (python 파이썬) 사탕게임 (0) | 2021.03.23 |
|---|---|
| [백준] 15655번 (python 파이썬) N과 M(6) (0) | 2021.03.23 |
| [백준] 15651번 (python 파이썬) N과M(3) (0) | 2021.03.23 |
| [백준] 14500번 (python 파이썬) 테트로미노 (0) | 2021.03.22 |
| [백준] 2309번 (python 파이썬) 일곱난쟁이 (0) | 2021.03.19 |