https://school.programmers.co.kr/learn/courses/30/lessons/12914
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
def solution(n):
if n < 3:
return n
else:
d = [0] * (n+1)
d[1] = 1
d[2] = 2
for i in range(3, n+1):
d[i] = d[i-1] + d[i-2]
return d[-1] % 1234567
숫자 형태를 보고 어디선가 많이 본 것 같다...했는데 피보나치 수열이었다ㄷㄷㄷ
그래서 피보나치 수열을 프로그래밍하고 %1234567하면 끝!
여기서 d = [0] * (n+1)을 한 이유는 리스트의 크기가 피보나치 수열을 할 경우 n을 넘어가기 때문이다
리스트의 크기를 조절하는 방법은 [0] * (x) 인 것을 기억해두자!
'[개발]programmers > Python3' 카테고리의 다른 글
Lv.1_문자열 내 마음대로 정렬하기 (0) | 2023.02.21 |
---|---|
Lv.2_H-Index (0) | 2023.02.20 |
Lv.2_점프와 순간 이동 (0) | 2023.02.15 |
Lv.2_N개의 최소공배수 (0) | 2023.02.15 |
Lv.2_예상 대진표 (0) | 2023.02.15 |