Submission

Status:

[PPP][-SSSSS][-S]

Subtask/Task Score:

{30/30}{0/50}{0/20}

Score: 30

User: purihorharin

Problemset: ช่างไฟ

Language: c

Time: 0.077 second

Submitted On: 2026-03-19 22:03:01

#include <stdio.h>
#include <stdint.h>

int sgn (int64_t n) {
    if (n < 0ll) return -1;
    if (n > 0ll) return 1;
    return 0;
}

int64_t myabs (int64_t n) {
    return (n > 0) ? n : -n;
}

int main () {
    int n;
    scanf("%d", &n);
    int64_t sum = 0;
    int64_t n1 = 0, n2 = 0;
    for (int i = 0; i < n; i++) {
        scanf("%lld", &n2);
        sum += n1;
        if (sgn(sum) != sgn(n2)) {
            sum = myabs(sum);
        }
        n1 = n2;
    }
    sum += n1;
    sum = myabs(sum);
    printf("%lld", sum);
}