Submission
Status:
PP--------------T---
Score: 10
User: mydKN
Problemset: ผลบวก (ยาก)
Language: c
Time: 0.115 second
Submitted On: 2024-10-15 10:27:53
#include<stdio.h>
#define maxn 1000010
struct var{
int idx;
int val;
};
typedef struct var var;
int n;
int arr[maxn];
int q, t;
int cnt;
var clc[20010];
int main(){
scanf("%d", &n);
for(int i=1;i<=n;++i){
scanf("%d", &arr[i]);
arr[i] += arr[i-1];
}
scanf("%d", &q);
for(int i=0;i<q;++i){
scanf("%d", &t);
for(int j=0;j<t;++j){
int idx, val;
scanf("%d %d", &idx, &val);
clc[cnt].idx = idx;
clc[cnt].val = val-(arr[idx+1]-arr[idx]);
++cnt;
}
int x, y;
scanf("%d %d", &x, &y);
int sum = arr[y+1]-arr[x];
// printf("sum : %d\n", sum);
for(int j=0;j<cnt;++j){
if(clc[j].idx >= x && clc[j].idx <= y){
sum += clc[j].val;
}
}
printf("%d\n", sum);
}
// for(int i=0;i<=n;++i) printf("%d ", arr[i]);
}