Submission
Status:
[PPP][PPPPPP][PP]
Subtask/Task Score:
{30/30}{50/50}{20/20}
Score: 100
User: KantaponZ
Problemset: ช่างไฟ
Language: cpp
Time: 0.085 second
Submitted On: 2025-09-25 00:53:43
#include <bits/stdc++.h>
using namespace std;
#define ll long long
int N;
ll P;
ll A[1000005];
ll dp[1000005][2];
int main() {
ios_base::sync_with_stdio(0), cin.tie(0);
cin >> N;
for (int i = 1; i <= N; i++) cin >> A[i];
for (int i = 1; i <= N; i++) {
dp[i][0] = min(dp[i - 1][0], dp[i - 1][1]) + A[i];
dp[i][1] = max(max(dp[i - 1][0], dp[i - 1][1]) + A[i], max(abs(dp[i - 1][0] + A[i]), abs(dp[i - 1][1] + A[i])));
}
cout << max(dp[N][0], dp[N][1]);
}
/*
4
10 -9 -3 4
3
-1 -2 -3
*/