[BOJ][C++] λ°±μ€ 1912λ²: μ°μν©
https://www.acmicpc.net/problem/1912
1912λ²: μ°μν©
첫째 μ€μ μ μ n(1 ≤ n ≤ 100,000)μ΄ μ£Όμ΄μ§κ³ λμ§Έ μ€μλ nκ°μ μ μλ‘ μ΄λ£¨μ΄μ§ μμ΄μ΄ μ£Όμ΄μ§λ€. μλ -1,000λ³΄λ€ ν¬κ±°λ κ°κ³ , 1,000λ³΄λ€ μκ±°λ κ°μ μ μμ΄λ€.
www.acmicpc.net
λ¬Έμ
nκ°μ μ μλ‘ μ΄λ£¨μ΄μ§ μμμ μμ΄μ΄ μ£Όμ΄μ§λ€. μ°λ¦¬λ μ΄ μ€ μ°μλ λͺ κ°μ μλ₯Ό μ νν΄μ ꡬν μ μλ ν© μ€ κ°μ₯ ν° ν©μ ꡬνλ €κ³ νλ€. λ¨, μλ ν κ° μ΄μ μ νν΄μΌ νλ€.
μλ₯Ό λ€μ΄μ 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 μ΄λΌλ μμ΄μ΄ μ£Όμ΄μ‘λ€κ³ νμ. μ¬κΈ°μ μ λ΅μ 12+21μΈ 33μ΄ μ λ΅μ΄ λλ€.
μ λ ₯
첫째 μ€μ μ μ n(1 ≤ n ≤ 100,000)μ΄ μ£Όμ΄μ§κ³ λμ§Έ μ€μλ nκ°μ μ μλ‘ μ΄λ£¨μ΄μ§ μμ΄μ΄ μ£Όμ΄μ§λ€. μλ -1,000λ³΄λ€ ν¬κ±°λ κ°κ³ , 1,000λ³΄λ€ μκ±°λ κ°μ μ μμ΄λ€.
μΆλ ₯
첫째 μ€μ λ΅μ μΆλ ₯νλ€.
νμ΄
DPλ₯Ό μ΄μ©νμ
v[i] = iλ²μ§Έ μ«μλ₯Ό ν¬ν¨ν μ΅λ μ°μ ν©
벑ν°λ₯Ό λ°λ‘ λ§λ€μ΄λ λμ§λ§ λλ μΈνμ μ¬μ©ν 벑ν°λ₯Ό μ¬μ¬μ©νλ€
(μ§μ μ μκ°μμ΄ μ΄μ€λ°°μ΄λ‘ dpνλ€κ° λ©λͺ¨λ¦¬μ΄κ³Ό λΉν¨)
// νμ΄ : https://whkakrkr.tistory.com
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
cin >> n;
vector<int> v(n);
for(int i=0; i<n; i++) {
cin >> v[i];
}
for(int i=1; i<n; i++) {
v[i] = max(v[i-1]+v[i], v[i]);
}
cout << *max_element(v.begin(), v.end());
return 0;
}