728x90
[๋ฌธ์ ๋งํฌ] ๐
ํ๋ก๊ทธ๋๋จธ์ค
SW๊ฐ๋ฐ์๋ฅผ ์ํ ํ๊ฐ, ๊ต์ก, ์ฑ์ฉ๊น์ง Total Solution์ ์ ๊ณตํ๋ ๊ฐ๋ฐ์ ์ฑ์ฅ์ ์ํ ๋ฒ ์ด์ค์บ ํ
programmers.co.kr
ํ์ด ๋ฐฉ๋ฒ
๐ก fibo[0] = 0, fibo[1] = 1 ๋ฏธ๋ฆฌ ์ ์
ํผ๋ณด๋์น ์์ด์์ ์ฒซ ๋ ํญ, ์ฆ fibo[0] = 0๊ณผ fibo[1] = 1์ ์์๊ฐ์ด์ ์์ด์ ์ ์์ ํด๋นํ๊ธฐ ๋๋ฌธ์ ๋ฐ๋ก ์ ์ฅํ๋ค. ์ด๋ค์ ํผ๋ณด๋์น ์์ด์ ๊ณ์ฐํ๋ ๊ธฐ์ด๊ฐ ๋๋ค. ์ด์ ๋ ๋ค์๊ณผ ๊ฐ๋ค.
- ์ฌ๊ท์ ์ ์ : ํผ๋ณด๋์น ์์ด์ F(n) = F(n − 1) + F(n − 2) ๋ก ์ ์๋๋ฉฐ, ๊ณผ F(1) = 1 ์ด ์์ผ๋ฉด ์ดํ์ ๋ชจ๋ ํผ๋ณด๋์น ์๋ฅผ ๊ณ์ฐํ ์ ์๋ค. fibo[0]๊ณผ fibo[1]์ด ์ด๊ธฐํ๋์ง ์์ผ๋ฉด, ์ฌ๊ท์ ์ฐ์ฐ์ ์์ํ ์ ์๊ฒ ๋๋ค.
๋ฐ๋ผ์ 0๊ณผ 1์ ๋จผ์ ๋ฐ๋ก ์ ์ฅํ๊ณ , 2๋ถํฐ ๋ฐ๋ณต๋ฌธ์ ๋๋ฆฐ๋ค.
Solution
def solution(n):
fibo = [0]*(n + 1)
fibo[0] = 0
fibo[1] = 1
for i in range(2, n + 1):
fibo[i] = fibo[i - 1] + fibo[i - 2]
return fibo[n] % 1234567
๐ 1234567๋ก ๋๋๋ ์ด์ ?
- ๊ฐ์ ํฌ๊ธฐ ์ ํ
- ํผ๋ณด๋์น ์๋ ์์๊ฐ ์ปค์ง์๋ก ๋งค์ฐ ๋น ๋ฅด๊ฒ ์ฆ๊ฐํ๊ธฐ ๋๋ฌธ์, ํฐ ์ซ์๋ฅผ ๊ณ์ฐํ๋ค ๋ณด๋ฉด ๋ฉ๋ชจ๋ฆฌ์ ์ฐ์ฐ ์๊ฐ ๋ชจ๋ ๋ถ๋ด์ด ๋๋ค. 10^๋ฒ์งธ ํผ๋ณด๋์น ์๋ ์์ญ๋ง ์๋ฆฌ์ ์๋ก, ๊ณ์ฐ๊ณผ ์ ์ฅ์ด ์ด๋ ต๋ค. ๋ฐ๋ผ์ ๊ฒฐ๊ณผ๋ฅผ 1234567๋ก ๋๋์ด ๊ณ์ฐํ๋ฉด ๊ฐ์ด ์์์ ธ์ ๋ ๋น ๋ฅด๊ณ ํจ์จ์ ์ผ๋ก ์ฐ์ฐํ ์ ์๋ค.
- ๋ฌธ์ ์ ํน์ฑ (๋ชจ๋๋ฌ ์ฐ์ฐ)
- ๋ง์ ๋ฌธ์ ์์ ๊ฐ์ด ๋งค์ฐ ์ปค์ง ๋๋ ํน์ ์๋ก ๋๋ ๋๋จธ์ง๋ฅผ ๊ตฌํ๋ ๋ฐฉ์์ด ์ฌ์ฉ๋๋ค. ํนํ ํผ๋ณด๋์น ์์ฒ๋ผ ์ฆ๊ฐ ์๋๊ฐ ๋งค์ฐ ๋น ๋ฅธ ๊ฒฝ์ฐ ๋ชจ๋๋ฌ ์ฐ์ฐ์ ํตํด ๊ฒฐ๊ณผ์ ํฌ๊ธฐ๋ฅผ ์กฐ์ ํ๋ ๊ฒ์ ์ผ๋ฐ์ ์ด๋ค.
๋ฐ๋ผ์ 1234567๋ก ๋๋๋ ์ด์ ๋ ๊ฐ์ ํฌ๊ธฐ ์ ํ๊ณผ ๋ชจ๋๋ฌ ์ฐ์ฐ ๊ท์น์ ๋ฐ๋ฅธ ์๊ตฌ์ฌํญ ๋๋ฌธ์ด๋ค.
728x90
'๐งฉ Algorithm > [Programmers] Level 2' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| [Programmers] L2. ์นดํซ (์์ ํ์/Python) (0) | 2024.11.11 |
|---|---|
| [Programmers] L2. ์ง์ง์ด ์ ๊ฑฐํ๊ธฐ (Python) (0) | 2024.11.11 |
| [Programmers] L2. ์ด์ง ๋ณํ ๋ฐ๋ณตํ๊ธฐ (Python) (0) | 2024.11.09 |
| [Programmers] L2. JadenCase ๋ฌธ์์ด ๋ง๋ค๊ธฐ (Python) (0) | 2024.11.08 |
| [Programmers] L2. ์ต์๊ฐ ๋ง๋ค๊ธฐ (Python) (0) | 2024.11.08 |