๋ฌธ์
์๊ทผ์ด์ ์ฌ๋์ ์๋ฅ์ด๋ ๋ฌธ๋ฐฉ๊ตฌ์์ ์คํฐ์ปค 2n๊ฐ๋ฅผ ๊ตฌ๋งคํ๋ค. ์คํฐ์ปค๋ ๊ทธ๋ฆผ (a)์ ๊ฐ์ด 2ํ n์ด๋ก ๋ฐฐ์น๋์ด ์๋ค. ์๋ฅ์ด๋ ์คํฐ์ปค๋ฅผ ์ด์ฉํด ์ฑ ์์ ๊พธ๋ฏธ๋ ค๊ณ ํ๋ค.
์๋ฅ์ด๊ฐ ๊ตฌ๋งคํ ์คํฐ์ปค์ ํ์ง์ ๋งค์ฐ ์ข์ง ์๋ค. ์คํฐ์ปค ํ ์ฅ์ ๋ผ๋ฉด, ๊ทธ ์คํฐ์ปค์ ๋ณ์ ๊ณต์ ํ๋ ์คํฐ์ปค๋ ๋ชจ๋ ์ฐข์ด์ ธ์ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค. ์ฆ, ๋ ์คํฐ์ปค์ ์ผ์ชฝ, ์ค๋ฅธ์ชฝ, ์, ์๋์ ์๋ ์คํฐ์ปค๋ ์ฌ์ฉํ ์ ์๊ฒ ๋๋ค.
๋ชจ๋ ์คํฐ์ปค๋ฅผ ๋ถ์ผ ์ ์๊ฒ๋ ์๋ฅ์ด๋ ๊ฐ ์คํฐ์ปค์ ์ ์๋ฅผ ๋งค๊ธฐ๊ณ , ์ ์์ ํฉ์ด ์ต๋๊ฐ ๋๊ฒ ์คํฐ์ปค๋ฅผ ๋ผ์ด๋ด๋ ค๊ณ ํ๋ค. ๋จผ์ , ๊ทธ๋ฆผ (b)์ ๊ฐ์ด ๊ฐ ์คํฐ์ปค์ ์ ์๋ฅผ ๋งค๊ฒผ๋ค. ์๋ฅ์ด๊ฐ ๋ ์ ์๋ ์คํฐ์ปค์ ์ ์์ ์ต๋๊ฐ์ ๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค. ์ฆ, 2n๊ฐ์ ์คํฐ์ปค ์ค์์ ์ ์์ ํฉ์ด ์ต๋๊ฐ ๋๋ฉด์ ์๋ก ๋ณ์ ๊ณต์ ํ์ง ์๋ ์คํฐ์ปค ์งํฉ์ ๊ตฌํด์ผ ํ๋ค.
์์ ๊ทธ๋ฆผ์ ๊ฒฝ์ฐ์ ์ ์๊ฐ 50, 50, 100, 60์ธ ์คํฐ์ปค๋ฅผ ๊ณ ๋ฅด๋ฉด, ์ ์๋ 260์ด ๋๊ณ ์ด ๊ฒ์ด ์ต๋ ์ ์์ด๋ค. ๊ฐ์ฅ ๋์ ์ ์๋ฅผ ๊ฐ์ง๋ ๋ ์คํฐ์ปค (100๊ณผ 70)์ ๋ณ์ ๊ณต์ ํ๊ธฐ ๋๋ฌธ์, ๋์์ ๋ ์ ์๋ค.
์ ๋ ฅ
์ฒซ์งธ ์ค์ ํ ์คํธ ์ผ์ด์ค์ ๊ฐ์ T๊ฐ ์ฃผ์ด์ง๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค์ ์ฒซ์งธ ์ค์๋ n (1 ≤ n ≤ 100,000)์ด ์ฃผ์ด์ง๋ค. ๋ค์ ๋ ์ค์๋ n๊ฐ์ ์ ์๊ฐ ์ฃผ์ด์ง๋ฉฐ, ๊ฐ ์ ์๋ ๊ทธ ์์น์ ํด๋นํ๋ ์คํฐ์ปค์ ์ ์์ด๋ค. ์ฐ์ํ๋ ๋ ์ ์ ์ฌ์ด์๋ ๋น ์นธ์ด ํ๋ ์๋ค. ์ ์๋ 0๋ณด๋ค ํฌ๊ฑฐ๋ ๊ฐ๊ณ , 100๋ณด๋ค ์๊ฑฐ๋ ๊ฐ์ ์ ์์ด๋ค.
์ถ๋ ฅ
๊ฐ ํ ์คํธ ์ผ์ด์ค ๋ง๋ค, 2n๊ฐ์ ์คํฐ์ปค ์ค์์ ๋ ๋ณ์ ๊ณต์ ํ์ง ์๋ ์คํฐ์ปค ์ ์์ ์ต๋๊ฐ์ ์ถ๋ ฅํ๋ค.
https://www.acmicpc.net/problem/9465
๐ก ํ์ด ๋ฐ ์ฝ๋
import sys
input = sys.stdin.readline
result = []
t = int(input())
for _ in range(t):
sticker = []
n = int(input())
for _ in range(2):
sticker.append(list(map(int, input().split())))
if n >= 2:
sticker[0][1] = sticker[1][0] + sticker[0][1]
sticker[1][1] = sticker[0][0] + sticker[1][1]
for i in range(2, n):
for j in range(2):
sticker[j][i] = sticker[j][i] + max(sticker[abs(j-1)][i-1], sticker[abs(j-1)][i-2])
result.append(max(sticker[0][n-1], sticker[1][n-1]))
for r in result:
print(r)
๋ฌธ์ ๋ฅผ ์ฝ์๋ง์ ๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ ๋ฌธ์ ์ธ ๊ฒ์ ๋์น์ฑ๋ค.
์ ๋ ฅ๋ฐ์ ์คํฐ์ปค ๋ฐฐ์ด์ ์ธ๋ก ์ง๊ทธ์ฌ๊ทธ ์์๋๋ก ์คํฐ์ปค ์ ์์ ํฉ์ด ๊ฐ์ฅ ํฐ ๊ฐ์ด ๋ฌด์์ธ์ง ํ๋ณํ์ฌ ๊ฐฑ์ ํด๋๊ฐ๋ค ๋ณด๋ฉด ์ฒซ๋ฒ์งธ์ค์ ๋ง์ง๋ง ์์์ ๋๋ฒ์งธ์ค์ ๋ง์ง๋ง ์์ ์ค ํฐ ๊ฐ์ ์ต๋๊ฐ์ผ๋ก ํ์ ํ ์ ์๋ค. ์ธ๋ก์ค(j)๋ฅผ ๋๋๋ค ๋๋ abs()๋ผ๋ ์ ๋๊ฐ ํจ์๋ฅผ ์ฌ์ฉํ์๋ค.
'Algorithm > ๐ Baekjoon Judge' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[BOJ] ๋ฐฑ์ค 3107๋ฒ IPv6 - ํ์ด์ฌ(Python) (0) | 2021.12.29 |
---|---|
[BOJ] ๋ฐฑ์ค 7562๋ฒ ๋์ดํธ์ ์ด๋ - ํ์ด์ฌ(Python) (0) | 2021.12.29 |
[BOJ] ๋ฐฑ์ค 1202๋ฒ ๋ณด์ ๋๋ - ํ์ด์ฌ(Python) (0) | 2021.11.23 |
[BOJ] ๋ฐฑ์ค 1012๋ฒ ์ ๊ธฐ๋ ๋ฐฐ์ถ - ํ์ด์ฌ(Python) (0) | 2021.10.07 |
[BOJ] ๋ฐฑ์ค 14501๋ฒ ํด์ฌ - ํ์ด์ฌ(Python) (0) | 2021.10.06 |