ํฐ์คํ ๋ฆฌ ๋ทฐ
728x90
๋ฐ์ํ
๋ฌธ์
๋ฌธ์ ํ์ด
์ด ๋ฌธ์ ๋ 2 x n ํ์ผ๋ง ๋ฌธ์ ์์ 2 x 2 ํ์ผ์ด ์ถ๊ฐ ๋์ด, ์ฌ์ฉํ ์ ์๋ ํ์ผ์ด 2 x 1, 1 x 2, 2 x 2๋ก 3๊ฐ์ธ ๊ฒฝ์ฐ์ 2 x n์ ๊ณต๊ฐ์ ํ์ผ์ ๋ถ์ผ ์ ์๋ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๋ ๋ฌธ์ ์ด๋ค.
๊ทธ๋ฆผ 1์ ๋ณด๋ฉด, n์ด ์ฆ๊ฐํจ์ ๋ฐ๋ผ 1, 3, 5, 11, 21๊ณผ ๊ฐ์ ๊ท์น์ ๋ณด์ด๋ ๊ฒ์ ์ ์ ์์ผ๋ฉฐ ์ด๋ฅผ ์์ผ๋ก ๋ํ๋ด๋ฉด `f(n) = f(n - 1) + 2 * f(n - 2)`๊ฐ ๋๋ค. ๋ฐ๋ผ์ ํด๋น ์์ ์ฝ๋๋ก ์์ฑํ๋ฉด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์๋ค.
์ฝ๋
from sys import stdin
if __name__ == "__main__":
n = int(stdin.readline())
a, b = 1, 3
for _ in range(1, n):
a, b = b, a * 2 + b
print(a % 10007)
728x90
๋ฐ์ํ
'๐จโ๐ป ์ฝ๋ฉํ ์คํธ > ๋ฐฑ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฐฑ์ค: 11052 ์นด๋ ๊ตฌ๋งคํ๊ธฐ (0) | 2020.06.29 |
---|---|
๋ฐฑ์ค: 9095 1, 2, 3 ๋ํ๊ธฐ (0) | 2020.06.29 |
๋ฐฑ์ค: 11726 2xn ํ์ผ๋ง (0) | 2020.06.28 |
๋ฐฑ์ค: 1463 1๋ก ๋ง๋ค๊ธฐ (0) | 2020.06.28 |
๋ฐฑ์ค: 11576 Base Conversion (0) | 2020.06.27 |
๋๊ธ
๊ธ ๋ณด๊ดํจ
์ต๊ทผ์ ์ฌ๋ผ์จ ๊ธ
์ต๊ทผ์ ๋ฌ๋ฆฐ ๋๊ธ