๋ฌธ์
https://www.acmicpc.net/problem/1932
๋ด ๋ฌธ์ ํ์ด
n = int(input())
memory = [int(input())]
for _ in range(1, n):
now = list(map(lambda x: int(x), input().split()))
for i in range(len(now)):
if i == 0:
now[0] += memory[0]
elif i == len(now)-1:
now[-1] += memory[-1]
else:
if memory[i-1] > memory[i]: now[i] += memory[i-1]
else: now[i] += memory[i]
memory = now
print(max(memory))
๐ DP ๋ฌธ์ ๋ก, ์ต์ํ์ ํ์์ผ๋ก ์ต๋ ๊ฐ์ ๋ง๋๋ ๊ฒฝ๋ก๋ฅผ ์ฐพ๋ ๊ฒ์ด ํฌ์ธํธ!
- ๋ชจ๋ ์ธต์์๋ ์ต๋๊ฐ์ ๋ง๋ค๊ธฐ ์ํ์ฌ ์ ์ธต์ ๋๊ฐ์ ์, ํน์ ๋ค ์ค ๋ ํฐ ๋์ ํฉ์ ์๋ฅผ ๊ณจ๋ผ์ผ ํ๋ค.
#1149_RGB๊ฑฐ๋ฆฌ ๋ฌธ์ ๊ฐ์ ๊ฒฝ์ฐ์๋ ์ด๋ค ์ ๋ ฅ์ด ์๋ 3๊ฐ์ง์ ๊ฒฝ์ฐ์ ์๋ก ์ถ๋ฆด ์ ์๊ธฐ ๋๋ฌธ์
์ฒ์๋ถํฐ ๊ฒฝ์ฐ์ ์๋ฅผ ๊ตฌํ๊ธฐ ์ํ ๋ฆฌ์คํธ๋ฅผ ๋ชจ๋ ์์ฑํด๋๊ณ ์์ํ์ง๋ง, ์ด ๋ฌธ์ ์ ๊ฒฝ์ฐ์๋
์ ๋ ฅ๋๋ N๊ฐ์ ๋ฐ๋ผ ๊ฒฝ์ฐ์ ์๊ฐ ๋ฌด์ํ ๋ง์์ง ์ ์์ผ๋ฏ๋ก ๋ชจ๋ ๊ฒฝ์ฐ์ ์์ ๋ํ ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ง ์๊ณ
'์ ์ธต(์ด์ ์ธต)'์ ์๋ฏธํ๋ memory ๋ฆฌ์คํธ์ '์๋ซ ์ธต(ํ์ฌ ์ธต)'์ ์๋ฏธํ๋ now ๋ฆฌ์คํธ๋ฅผ ๋ง๋ค์ด์,
๊ณ์ํ์ฌ memory ๋ฆฌ์คํธ์ ๊ฐ์ ๋์ ํ๋ฉฐ ๋ง์ง๋ง์ ์ ์ฅ๋ memory ๊ฐ ์ค ๊ฐ์ฅ ํฐ ์๋ฅผ ๊ณ ๋ฅด๋ฉด ๋๋ค. - ํ ๊ฐ์ง ๊ณ ๋ คํด์ค ์ ์, ํ ์ธต์ ๊ฐ์ฅ ์ฒซ ๋ฒ์งธ ์์๋ ๋ง์ง๋ง ์์์ ๊ฒฝ์ฐ์๋
์ ์ธต์์ ๋ ๊ฐ์ง ๊ฐ์ ์ ํํ ์ ์๊ธฐ ๋๋ฌธ์ ๊ทธ ๋ถ๋ถ๋ง ๋ฐ๋ก ์์ธ๋ก ๋นผ์ฃผ์ด์ ์ฒ๋ฆฌํ๋ค.
๐ก ํผ๋๋ฐฑ
- ๊ฒฝ์ฐ์ ์๋ฅผ ์ด๋ป๊ฒ ์ฒ๋ฆฌํด์ค ๊ฒ์ธ์ง๋ง ์๊ฐํ๋ฉด ์ฌ์ด ๋ฌธ์ ๊ฐ ๋ ๊ฒ ๊ฐ๋ค.
'4๏ธโฃ Python > Problem Solving' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Python Algorithm] ๋ฐ์ด๋ฌ์ค BOJ #2606 (0) | 2022.01.28 |
---|---|
[Python Algorithm] ์ ๊ธฐ๋ ๋ฐฐ์ถ BOJ #1012 (0) | 2022.01.27 |
[Python Algorithm] RGB๊ฑฐ๋ฆฌ BOJ #1149 (0) | 2021.12.16 |
[Python Algorithm] ํ๋ฒํ ๋ฐฐ๋ญ BOJ #12865 (2) | 2021.11.25 |
[Python Algorithm] ์ซ์์ ํํ Programmers(Lv.2) (0) | 2021.11.22 |
๋๊ธ