๋ฌธ์ (์ถ์ฒ: 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 |