#include <iostream> #include <stdint.h> using namespace std; int main() { static int64_t T[500001]; static int64_t S[500001]; int64_t d=0, dk, b, o=0; int n,m,a; cin >> n >> m ; for(int i=0; i<n; i++){ cin >> a; T[i]=a; } for (int k=0; k<m; k++){ cin >> dk >> b; for(int l=0; l<n; l++){ S[l]=(dk-d)*T[l]+S[l]; if(S[l]>b){o=o+S[l]-b; S[l]=b;} } cout << o << '\n'; o=0; d=dk; } 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 27 28 29 30 31 32 33 34 | #include <iostream> #include <stdint.h> using namespace std; int main() { static int64_t T[500001]; static int64_t S[500001]; int64_t d=0, dk, b, o=0; int n,m,a; cin >> n >> m ; for(int i=0; i<n; i++){ cin >> a; T[i]=a; } for (int k=0; k<m; k++){ cin >> dk >> b; for(int l=0; l<n; l++){ S[l]=(dk-d)*T[l]+S[l]; if(S[l]>b){o=o+S[l]-b; S[l]=b;} } cout << o << '\n'; o=0; d=dk; } return 0; } |