📖 문제
🧑🏻💻 풀이 과정
1) 문제 이해 및 접근
수열을 구해야하기 때문에 재귀를 이용하여 풀었습니다.
2) 알고리즘
- 재귀
3) 풀이 코드
사용 언어 - Python
import sys
sys.stdin = open('input.txt')
def solution(n, ans):
if n <= 0: # 원하는 개수를 모두 구한 경우
print(*ans)
return
for i in range(1, N+1): # 숫자 돌아가면서 확인
if not selected[i]: # 숫자가 사용되었는지 확인
selected[i] = 1 # 숫자 사용 체크
solution(n-1, ans + [i]) # 다음 재귀 호출
selected[i] = 0
N, M = map(int, sys.stdin.readline().split()) # 자연수 숫자, 뽑아내는 수열의 개수
selected = [0] * (N+1) # 숫자가 선택됬는지 확인 여부
solution(M, []) # 재귀
📝 결과 및 학습한 내용
1) 어려웠던 내용
특별히 없습니다.
2) 새롭게 학습한 내용
특별히 없습니다.
🔗 문제 링크
- https://www.acmicpc.net/problem/15649
※ 오류 및 오타, 다른 의견이 있는 경우 댓글을 남겨주시면 감사하겠습니다
'알고리즘 문제풀이 > Python' 카테고리의 다른 글
[프로그래머스] 타겟넘버 (0) | 2022.01.16 |
---|---|
[백준] 6443 애너그램 (0) | 2022.01.15 |
[백준] 1275 커피숍2 (0) | 2022.01.13 |
[백준] 11505 구간 곱 구하기 (0) | 2022.01.12 |
[백준] 14502 연구소 (0) | 2022.01.11 |
댓글