Submission
Status:
[PPP][-SSSSS][-S]
Score: 30
User: getsuki
Problemset: ช่างไฟ
Language: cpp
Time: 0.077 second
Submitted On: 2024-09-30 13:59:31
#include <stdio.h>
#include <math.h>
int main() {
int N;
long long int P = 0;
scanf("%d", &N);
int a[N + 5];
a[N + 1] = 0;
for (int i = 0; i < N; i++) {
scanf("%d", &a[i]);
}
for (int i = 0; i < N; i++) {
// printf("%d\n", P);
long long int nonAbsoluteValue = 0;
long long int absoluteValue = 0;
nonAbsoluteValue = P + a[i];
absoluteValue = abs(P + a[i]);
long long int nextnonAbsValue = nonAbsoluteValue + a[i+1];
long long int nextAbsValue = absoluteValue + a[i+1];
if (abs(nextnonAbsValue) == nextAbsValue) {
P = nonAbsoluteValue;
} else if (nextAbsValue > abs(nextnonAbsValue)) {
P = absoluteValue;
} else {
P = nonAbsoluteValue;
}
}
printf("%lld", P);
}