Python/Algorithm
[프로그래머스] 멀리 뛰기 - Python
언킴
2023. 9. 16. 17:08
반응형
해당 문제는 피보나치 수열로 문제를 풀 수 있다.
def solution(n):
if n == 1: return 1
else:
p = [0] * n
p[0] = 1
p[1] = 2
for i in range(2, n):
p[i] = (p[i-1] + p[i-2]) % 1234567
return p[-1]
점화식으로 풀이를 진행했는데, 마지막에 1234567으로 나누지 않았을 때에는 테스트 케이스의 값이 너무 커서 런타임에러가 발생했다. 매번 값을 계산할 떄마다 1234567을 나눠주는 형태로 결과를 도출하고 마지막 p[-1] 값을 리턴하는 방식으로 해결할 수 있따.