3Level ๋ฉ๋ฆฌ๋ฐ๊ธฐ
๋ฌธ์ ๋งํฌ
< ๋ฌธ์ ํต์ฌ >
-
๊ท์น์ฑ์ ์ฐพ๊ธฐ
โ dp[0] = 1
โ dp[1] = 2
โ dp[2] = dp[0]+dp[1] = 1+2 = 3
โ dp[3] = dp[1]+dp[2] = 2+3 = 5
โ dp[n-1] = dp[n-3]+dp[n-2] = ?!
< ๋ฌธ์ ์์ด๋์ด >
-
dp ์ฌ์ฉ
โ 2*n ํ์ผ๋ง๊ณผ ์ ์ฌ ( ์ด ๋ฌธ์ ๋ ํจ์จ์ฑ ์กด์ฌ )
< ์ฝ๋ >
1. dp ์ฌ์ฉ
def solution(n):
dp = [1,2]
for i in range(2, n):
dp.append(dp[i - 1] + dp[i - 2])
return dp[n - 1] % 1234567
print(solution(1))
< ๊ตฌํ ๋ฐฉ์ >
( ์ฌ์ฉํ ๋ฉ์๋, ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ฑ ์๋ฆฌ )
1. dp ์ฌ์ฉ
-
dp = []๋ฅผ ์์ฑ
-
๊ท์น์ฑ ์ฐพ๊ธฐ
โ dp[0] = 1
โ dp[1] = 2
โ dp[2] = dp[0]+dp[1] = 1+2 = 3
โ dp[3] = dp[1]+dp[2] = 2+3 = 5
โ dp[n-1] = dp[n-3]+dp[n-2]
-
for๋ฌธ์ ์ด์ฉ
-
0,1 ๋ถ๋ถ์ ์ด๋ฏธ ๋ฃ์ด๋์๊ธฐ ๋๋ฌธ์ range(2,n)์ผ๋ก ๋ฒ์ ์ง์
-
๊ฐ ๋ถ๋ถ์ ๋์ ํ ์๋ ์์ง๋ง ์ ๋ append๋ฅผ ์ด์ฉ
โ dp.append(dp[n-3]+dp[n-2])
-
-
n == 1์ผ ๊ฒฝ์ฐ ์์ธ๋ก ์ค์
โ ๊ตณ์ด ํ์์์ง๋ง ์ธ๋ฐ์์ด ๋์๊ฐ๋ ์ฝ๋๋ฅผ ์์ ๊ธฐ ์ํจ
-
dp[n-1] ๋ฆฌํด
โ ์ฐพ๊ณ ์ํ๋ n๋ถ๋ถ์ ์ธ๋ฑ์ค๋ n-1์ด๊ธฐ ๋๋ฌธ์
< ๊ฒฐ๊ณผ >
1. dp ์ฌ์ฉ
Author And Source
์ด ๋ฌธ์ ์ ๊ดํ์ฌ(3Level ๋ฉ๋ฆฌ๋ฐ๊ธฐ), ์ฐ๋ฆฌ๋ ์ด๊ณณ์์ ๋ ๋ง์ ์๋ฃ๋ฅผ ๋ฐ๊ฒฌํ๊ณ ๋งํฌ๋ฅผ ํด๋ฆญํ์ฌ ๋ณด์๋ค https://velog.io/@hayeon/3Level-๋ฉ๋ฆฌ๋ฐ๊ธฐ์ ์ ๊ท์: ์์์ ์ ๋ณด๊ฐ ์์์ URL์ ํฌํจ๋์ด ์์ผ๋ฉฐ ์ ์๊ถ์ ์์์ ์์ ์ ๋๋ค.
์ฐ์ํ ๊ฐ๋ฐ์ ์ฝํ
์ธ ๋ฐ๊ฒฌ์ ์ ๋
(Collection and Share based on the CC Protocol.)
์ข์ ์นํ์ด์ง ์ฆ๊ฒจ์ฐพ๊ธฐ
๊ฐ๋ฐ์ ์ฐ์ ์ฌ์ดํธ ์์ง
๊ฐ๋ฐ์๊ฐ ์์์ผ ํ ํ์ ์ฌ์ดํธ 100์ ์ถ์ฒ ์ฐ๋ฆฌ๋ ๋น์ ์ ์ํด 100๊ฐ์ ์์ฃผ ์ฌ์ฉํ๋ ๊ฐ๋ฐ์ ํ์ต ์ฌ์ดํธ๋ฅผ ์ ๋ฆฌํ์ต๋๋ค