๋ฌธ์ (์ถ์ฒ: https://www.acmicpc.net/problem/11726)
<2รn ํ์ผ๋ง>
๋ฌธ์
2 รn ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ 1 ร 2, 2 ร1 ํ์ผ๋ก ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์๋ฅผ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
์๋ ๊ทธ๋ฆผ์ 2 ร 5 ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ ์ฑ์ด ํ ๊ฐ์ง ๋ฐฉ๋ฒ์ ์์ด๋ค.

์ ๋ ฅ
์ฒซ์งธ ์ค์ n์ด ์ฃผ์ด์ง๋ค. (1 โค n โค 1,000)
์ถ๋ ฅ
์ฒซ์งธ ์ค์ 2 รn ํฌ๊ธฐ์ ์ง์ฌ๊ฐํ์ ์ฑ์ฐ๋ ๋ฐฉ๋ฒ์ ์๋ฅผ 10,007๋ก ๋๋ ๋๋จธ์ง๋ฅผ ์ถ๋ ฅํ๋ค.
๋ฌธ์ ํ์ด
- my solution
if __name__=='__main__':
n=int(input())
dp=[1,2]
for i in range(2,n):
dp.append((dp[i-1]+dp[i-2])%10007)
print(dp[n-1])
2 ร 1 : 1
2 ร 2 : 2
2 ร 3 : 3
2 ร 4 : 5
2 ร 5 : 8

๊ณผ ๊ฐ์ด 2 รn์ ์ฑ์ฐ๊ธฐ ์ํ ๋ฐฉ๋ฒ์ ์๋ 2 ร(n-1) + 2 ร(n-2)๋ฅผ ํตํด์ ๊ตฌํ ์ ์๋ ๊ฒ์ ์ ์ ์์๋ค.
์๊ฐ๐ค
๊ท์น๋ง ์ฐพ์ผ๋ฉด ์ฝ๊ฒ ํด๊ฒฐํ ์ ์๋ ๋ฌธ์ ์๋ค.

'๐Algorithm > ๐ฅBaekjoon' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Baekjoon] 6603_๋ก๋ (0) | 2022.03.03 |
---|---|
[Baekjoon] 5052_์ ํ๋ฒํธ ๋ชฉ๋ก (0) | 2022.03.02 |
[Baekjoon] 15988_1, 2, 3 ๋ํ๊ธฐ 3 (0) | 2022.02.28 |
[Baekjoon] 11660_๊ตฌ๊ฐ ํฉ ๊ตฌํ๊ธฐ 5 (0) | 2022.02.22 |
[Baekjoon] 11051_์ดํญ ๊ณ์ 2 (0) | 2022.02.21 |