๋ฌธ์
ํผ๋ณด๋์น ์๋ F(0) = 0, F(1) = 1์ผ ๋, 1 ์ด์์ n์ ๋ํ์ฌ F(n) = F(n-1) + F(n-2) ๊ฐ ์ ์ฉ๋๋ ์ ์ ๋๋ค.
์๋ฅผ๋ค์ด
- F(2) = F(0) + F(1) = 0 + 1 = 1
- F(3) = F(1) + F(2) = 1 + 1 = 2
- F(4) = F(2) + F(3) = 1 + 2 = 3
- F(5) = F(3) + F(4) = 2 + 3 = 5
์ ๊ฐ์ด ์ด์ด์ง๋๋ค.
2 ์ด์์ n์ด ์ ๋ ฅ๋์์ ๋, n๋ฒ์งธ ํผ๋ณด๋์น ์๋ฅผ 1234567์ผ๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๋ฆฌํดํ๋ ํจ์, solution์ ์์ฑํด ์ฃผ์ธ์.
์ ํ ์ฌํญ
- n์ 2 ์ด์ 100,000 ์ดํ์ธ ์์ฐ์์ ๋๋ค.
ํด์ค ์ฝ๋
def solution(n):
answer = []
for i in range(n+1):
if i == 0 or i == 1:
answer.append(i)
else:
f = answer[i-2] + answer[i-1]
answer.append(f%1234567)
return answer[-1]
๋ถ์ > ์ด ๋ฌธ์ ๋ฅผ ํตํด ํผ๋ณด๋์น ์์ ๋ํ ๊ฐ๋ ์ ์ก์ ์ ์์๋ค. ์ฐ์ 0๋ฒ์งธ์ 1๋ฒ์งธ๋ ๊ท์น์ ์๊ด์์ด i ๊ฐ์ด ๊ทธ๋๋ก input ๋๋ฏ๋ก ๋ฐ๋ก ์กฐ๊ฑด์ ๋นผ์ ์ ์ด์ฃผ๊ณ 3๋ฒ์งธ ์๋ถํฐ๋ ๊ท์น์ ๋ฐ๋ผ ๊ทธ ๋ค์ ์๊ฐ append ๋๊ธฐ ๋๋ฌธ์ ๊ท์น์ ์ ์ด์ ๋ฐ๋ณต๋ฌธ์ ๋๋ ค์ฃผ๋ฉด ๋๋ค.
'Algorithm > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Programmers] ๋ฌธ์์ด ์์ถ (0) | 2022.04.23 |
---|---|
[Programmers] ํ๋ฆฐํฐ (0) | 2022.04.14 |
[Programmers] ๋ค๋ฆฌ๋ฅผ ์ง๋๋ ํธ๋ญ (0) | 2022.04.13 |
[Programmers] ์์ฃผํ์ง ๋ชปํ ์ ์ (0) | 2022.04.13 |
[Programmers] ์ ํ๋ฒํธ ๋ชฉ๋ก (0) | 2022.04.13 |