Python으로 구현한 9625번 BABBA 문제 풀이입니다.
https://www.acmicpc.net/problem/9625
k = int(input())
fibo = [0] * (k + 1)
fibo[1] = 1
for i in range(2, k + 1) :
fibo[i] = fibo[i-1] + fibo[i-2]
print(fibo[k-1], fibo[k])
피보나치 수열 방식을 통해 문제를 해결할 수 있다.
fibo 리스트의 0번째 인덱스의 값은 0이 되고, 1번째 인덱스의 값은 1로 초기화한다.
반복문을 통해 리스트의 2번째 인덱스부터 하여 i-1번째 인덱스 값과 i-2번째 인덱스 값을 더하여 그 값을 현재
인덱스 값에 할당한다. 이와 같은 방식을 k + 1 까지 수행하여 반복문이 종료되면
fibo 리스트의 k-1번째 값과 k번째 값을 출력한다.
'백준(Python) 풀이 > 다이나믹 프로그래밍' 카테고리의 다른 글
백준(Python) 14501번 퇴사 풀이 (0) | 2022.01.12 |
---|---|
백준(Python) 1932번 정수 삼각형 풀이 (0) | 2022.01.12 |
백준(Python) 13301번 타일 장식물 풀이 (0) | 2021.10.27 |
백준(Python) 9095번 1, 2, 3 더하기 풀이 (0) | 2021.10.21 |
백준(Python) 1463번 1로 만들기 풀이 (0) | 2021.10.21 |