https://www.acmicpc.net/problem/4097
4097๋ฒ: ์์ต
์ ๋ ฅ์ ์ฌ๋ฌ ๊ฐ์ ํ ์คํธ ์ผ์ด์ค๋ก ์ด๋ฃจ์ด์ ธ ์๋ค. ๊ฐ ํ ์คํธ ์ผ์ด์ค์ ์ฒซ์งธ ์ค์๋ N์ด ์ฃผ์ด์ ธ ์๋ค. (1 ≤ N ≤ 250,000) ๋์งธ ์ค๋ถํฐ N๊ฐ์ ์ค์๋ ๋งค์ผ ๋งค์ผ์ ์์ต P๊ฐ ์ฃผ์ด์ง๋ค. (-10,000 ≤ P ≤ 10
www.acmicpc.net
"""
๋ฌธ์ ์ดํด :
1 2 3 4 5 6
-3 4 9 -2 -5 8
-3 1 10 8 3 11
i๊ฐ 0๋ณด๋ค ์์ผ๋ฉด pop()
"""
import sys
input = sys.stdin.readline
while 1:
n = int(input())
if n == 0:
break
lst = []
for i in range(n):
lst.append(int(input()))
# lst[0] = max(0, lst[0]) #์ด๋ผ ๊ฐ์ด ์์์ผ ๋, 0 ๊ฐ์ด ๋ค์ด๊ฐ ์ ์์
for i in range(1, n):
lst[i] = max(lst[i - 1] + lst[i], lst[i])
print(max(lst))
ํ ๋ฒ์ ๋ง์ถ๋๋ก ๋ ธ๋ ฅํ์ !
'์ฝํ ์ค๋น' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
<dp> 1932๋ฒ. ์ ์ ์ผ๊ฐํ (์ค๋ฒ 1) (0) | 2023.01.11 |
---|---|
<dp> 9465๋ฒ. ์คํฐ์ปค (์ค๋ฒ 1) (0) | 2023.01.11 |
<dp> ๋ฐฑ์ค 11722๋ฒ. ๊ฐ์ฅ ๊ธด ๊ฐ์ํ๋ ๋ถ๋ถ ์์ด (0) | 2023.01.10 |
<dp> ๋ฐฑ์ค 1149๋ฒ. rgb๊ฑฐ๋ฆฌ (์ค๋ฒ 1) (0) | 2023.01.09 |
<๊ตฌํ> ํ๋ก๊ทธ๋๋จธ์ค. ํฌ๊ธฐ๊ฐ ์์ ๋ถ๋ถ๋ฌธ์์ด (0) | 2023.01.08 |