๊ธฐ๋ก๋ฐฉ

BOJ_11726 : 2×n ํƒ€์ผ๋ง ๋ณธ๋ฌธ

CodingTest/Python

BOJ_11726 : 2×n ํƒ€์ผ๋ง

Soom_1n 2022. 9. 5. 20:34

๐Ÿ‘‰ ๋ฌธ์ œ๋งํฌ

 

11726๋ฒˆ: 2×n ํƒ€์ผ๋ง

2×n ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ 1×2, 2×1 ํƒ€์ผ๋กœ ์ฑ„์šฐ๋Š” ๋ฐฉ๋ฒ•์˜ ์ˆ˜๋ฅผ ๊ตฌํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค. ์•„๋ž˜ ๊ทธ๋ฆผ์€ 2×5 ํฌ๊ธฐ์˜ ์ง์‚ฌ๊ฐํ˜•์„ ์ฑ„์šด ํ•œ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์˜ˆ์ด๋‹ค.

www.acmicpc.net



๐Ÿ”ธ ๋ฌธ์ œ ๋ถ„์„ ๐Ÿ”ธ

  • ํƒ€์ผ์„ ์ฑ„์šธ ์ˆ˜ ์žˆ๋Š” ๊ฒฝ์šฐ์˜ ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.
  • ์ ํ™”์‹์€ dp[n] = dp[n-1] + dp[n-2] ์ด๋‹ค.

๐Ÿ”ธ ์ฝ”๋“œ ๐Ÿ”ธ

n = int(input())
dp = [1,1]

for i in range(1,n):
    dp.append((dp[-1]+dp[-2])%10007)

print(dp[n])

๐Ÿ”ธ ์ฝ”๋“œ ํ•ด์„ ๐Ÿ”ธ

  • dp ๋ฆฌ์ŠคํŠธ์˜ ์ธ๋ฑ์Šค 0, 1์€ 1๋กœ ์ดˆ๊ธฐํ™” ํ•œ๋‹ค.
  • ์ ํ™”์‹์— ๋”ฐ๋ผ ์ž…๋ ฅ ๊ฐ’(n) ๋งŒํผ ๋ฐ˜๋ณตํ•˜๋ฉฐ dp๋ฆฌ์ŠคํŠธ๋ฅผ ์ฑ„์šด๋‹ค.
    • ๊ฐ’์„ ์ฑ„์šธ ๋•Œ ๋ฌธ์ œ ์กฐ๊ฑด์— ๋”ฐ๋ผ 10007์˜ ๋‚˜๋จธ์ง€๋ฅผ ์ฑ„์›Œ๋‚˜๊ฐ„๋‹ค.

๐Ÿ”ธ end ๐Ÿ”ธ

  • ํ’€์ด๋ฅผ ๋ณด๋‹ˆ ์•„์ฃผ ๊ฐ„๋‹จํ•œ๋ฐ, ์ ํ˜ธ์‹์€ ์ง์ ‘ n์ด 5๊ฐ€ ๋ ๋•Œ๊นŒ์ง€ ์–ด๋–ค์‹์œผ๋กœ ๋Š˜์–ด๋‚˜๋‚˜ ๊ทธ๋ ค๋ณด๋ฉฐ ๊ตฌํ–ˆ๋‹ค.
    • ํ™•๋ฅ ํ†ต๊ณ„์ ์œผ๋กœ ์„ค๋ช… ๋  ๊ฒƒ ๊ฐ™์€๋ฐ, ์‚ฌ์‹ค ๋ชฐ๋ผ๋„ ๊ทœ์น™๋งŒ ๋ฐœ๊ฒฌํ•˜๋ฉด ํ’€๋ฆฌ๊ธฐ๋•Œ๋ฌธ์— ๊ทธ๋ƒฅ ๊ฐ„๋‹จํžˆ ํ’€์ดํ–ˆ๋‹ค.
  • ๋ฌธ์ œ ์กฐ๊ฑด์˜ 10007์˜ ๋‚˜๋จธ์ง€๋ฅผ ์žŠ์–ด์„œ 1ํšŒ ํ‹€๋ ธ๋‹ค.

728x90

'CodingTest > Python' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

BOJ_17626 : Four Squares  (0) 2022.09.07
BOJ_11727 : 2ร—n ํƒ€์ผ๋ง 2  (0) 2022.09.06
BOJ_11659 : ๊ตฌ๊ฐ„ ํ•ฉ ๊ตฌํ•˜๊ธฐ 4  (0) 2022.09.05
BOJ_9461 : ํŒŒ๋„๋ฐ˜ ์ˆ˜์—ด  (0) 2022.09.03
BOJ_9095 : 1, 2, 3 ๋”ํ•˜๊ธฐ  (0) 2022.09.03