Submission

Status:
PPxxxxxxxxxxxxxxxxxx

Score: 10

User: Winzzwz

Problemset: ผลบวก (ยาก)

Language: cpp

Time: 0.010 second

Submitted On: 2025-03-05 11:39:38

#include <bits/stdc++.h>
using namespace std;
using ll = long long;

int n,q,t,dp[100100];
vector <pair<int,int>> dp2;

int main() {
    cin.tie(0)->sync_with_stdio(0);
    cin >> n;
    for (int i = 1; i <= n; i++) {
        cin >> dp[i];
        dp[i] += dp[i-1];
    }
    cin >> q;
    while (q--) {
        cin >> t;
        while (t--) {
            int i,j; cin >> i >> j;
            dp2.push_back({i+1,j});
        }
        int s,e; cin >> s >> e;
        s++,e++;
        int sum = dp[e] - dp[s-1];
        for (int i = 0; i < dp2.size(); i++) {
            if (dp2[i].first >= s && dp2[i].first <= e) {
                sum += dp2[i].second - (dp[dp2[i].first] - dp[dp2[i].first-1]);
            }
        }
        cout << sum << '\n';
    }
    

    return 0;
}