Lang:GCC
Edit12345678910111213141516171819202122232425262728293031#include <stdio.h>#include <stdlib.h>int gI[100000];int main(){int i, G, L, R, V, N, M, O, A;scanf("%d%d", &N ,&M);for (i = 0,A = 0;i < (N + 1);i++) {scanf("%d", &gI[i]);A += gI[i];}for (i = 0;i < M;i++) {O = A;scanf("%d%d%d%d", &G, &L, &R, &V);switch (G) {case 0:while (L <= R) {gI[L++] += V;O += V;}break;case 1:while (L <= R) {O -= gI[L];O += gI[L++] = V;}break;}A = O;printf("%d\n", A);}