#include<cstdio> long long T[500005][2]; long long n, m, d=0, dp=0, w=0, kg=0; int ob(int i) { T[i][0]=T[i][0]+T[i][1]*(d-dp); if(T[i][0]<w) return 1; kg+=T[i][0]-w; T[i][0]=w; return 1; } int main() { scanf("%lld%lld", &n, &m); for(int i=0; i<n; i++) { scanf("%lld", &T[i][1]); T[i][0]=0; } for(int i=0 ; i<m; i++) { kg=0; scanf("%lld%lld",&d,&w); for(int i=0; i<n; i++) ob(i); printf("%d\n", kg); dp=d; } }
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 27 28 29 30 31 32 | #include<cstdio> long long T[500005][2]; long long n, m, d=0, dp=0, w=0, kg=0; int ob(int i) { T[i][0]=T[i][0]+T[i][1]*(d-dp); if(T[i][0]<w) return 1; kg+=T[i][0]-w; T[i][0]=w; return 1; } int main() { scanf("%lld%lld", &n, &m); for(int i=0; i<n; i++) { scanf("%lld", &T[i][1]); T[i][0]=0; } for(int i=0 ; i<m; i++) { kg=0; scanf("%lld%lld",&d,&w); for(int i=0; i<n; i++) ob(i); printf("%d\n", kg); dp=d; } } |