[BOJ] 9465. ์คํฐ์ปค(python)
๐๋ฌธ์
๐ช์์ด๋์ด
ํ๋์ ์คํฐ์ปค๋ฅผ ์ ํํ๋ฉด ์ํ์ข์ฐ์ ์๋ ์คํฐ์ปค๋ ์ ํํ ์ ์๋ค. ๊ทธ๋์ ํ์ฌ ์คํฐ์ปค์์ ๋ถ์์ชฝ์ด๋ ๋จ์์ชฝ์ ์๋ ์คํฐ์ปค๋ฅผ ๊ณ ๋ฅด๊ฑฐ๋ ํ์นธ ๋ค์ชฝ ๋ถ์๋ ๋จ์์ชฝ ์คํฐ์ปค๋ฅผ ๊ณ ๋ฅผ ์ ์๋ค.
2๋ฒ์ ์ ํํ๋ ๊ฒฝ์ฐ์๋ ์ด๋ฏธ 1.์์ ๊ณ ๋ฅธ ์คํฐ์ปค์ ์ ์๋ฅผ ๋ํ ๊ฐ์ด๊ธฐ ๋๋ฌธ์ ํด๋น ์คํฐ์ปค ์ ์์ 2๋ฒ ์คํฐ์ปค์ ์๋ฅผ ๋ํ๋ฉด ๋๋ค.
์ต๋ ์คํฐ์ปค ์ ์ ๊ณ ๋ฅด๊ธฐ
1์ด์ ์๋ ์คํฐ์ปค์ 2์ด์ ์๋ ์คํฐ์ปค๋ฅผ ๊ณ ๋ฅด๋ ๊ฒฝ์ฐ๊ฐ ์๋ก ๋ค๋ฅด๊ธฐ ๋๋ฌธ์ 1์ด๊ณผ 2์ด์ ๋ง์ง๋ง๋ฒ์งธ์ ์๋ ์คํฐ์ปค์ ์ดํฉ์ ๋น๊ตํ๋ค.๐ฅ์ฝ๋
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import sys; input = sys.stdin.readline
T = int(input())
for _ in range(T):
n = int(input())
stickers = []
for i in range(2):
stickers.append(list(map(int,input().split())))
stickers[0].insert(0,0)
stickers[1].insert(0,0)
for i in range(2,n+1):
stickers[0][i] += max(stickers[1][i-1],stickers[1][i-2])
stickers[1][i] += max(stickers[0][i-1],stickers[0][i-2])
print(max(stickers[0][n],stickers[1][n]))
This post is licensed under CC BY 4.0 by the author.
Comments powered by Disqus.