#include<bits/stdc++.h>
using namespace std;
typedef long long int63;
int n, m;
int63 a, b, t[500111], d[500111], w, pop;
int main(){
scanf("%d%d", &n, &m);
for( int i = 0; i<n; i++ )
scanf("%lld", &t[i]);
for( int i = 0; i<m; i++ ){
scanf("%lld%lld", &a, &b);
w = 0;
for( int i = 0; i<n; i++ )
d[i] += t[i]*(a-pop);
for( int i = 0; i<n; i++ ){
w += ( b<d[i] ? d[i]-b : 0 );
d[i] = min(b, d[i]);
}
printf("%lld\n", w);
pop = a;
}
return 0;
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 | #include<bits/stdc++.h> using namespace std; typedef long long int63; int n, m; int63 a, b, t[500111], d[500111], w, pop; int main(){ scanf("%d%d", &n, &m); for( int i = 0; i<n; i++ ) scanf("%lld", &t[i]); for( int i = 0; i<m; i++ ){ scanf("%lld%lld", &a, &b); w = 0; for( int i = 0; i<n; i++ ) d[i] += t[i]*(a-pop); for( int i = 0; i<n; i++ ){ w += ( b<d[i] ? d[i]-b : 0 ); d[i] = min(b, d[i]); } printf("%lld\n", w); pop = a; } return 0; } |
English