1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
#include <cstdio>
#include <cmath>
#include <algorithm>
long long odp, n, m, t[500005], t2[500005], d, popd, b;
int main(){
    scanf("%lld%lld", &n, &m);
    for( int i=1 ; i<=n ; i++ ){
        scanf("%lld", &t[i]);
    }
    for( int i=1 ; i<=m ; i++ ){
        scanf("%lld%lld", &d, &b);
        odp=0;
        for( int j=1 ; j<=n ; j++ ){
            t2[j]+=t[j]*(d-popd);
            odp+=std::max((long long)0, t2[j]-b);
            t2[j]=std::min(t2[j], b);
        }
        printf("%lld\n", odp);
        popd=d;
    }

}