#include<iostream> using namespace std; long long int t[200000]; long long int wait[200000]; int d[200000]; int main() { int n,m; cin>>n>>m; for(int i=0;i<n;i++)cin>>t[i]; for(int i=0;i<m;i++)cin>>d[i]; for(int i=0;i<m;i++){ int w=0; for(int j=0;j<n;j++){ int c=(j+1)*d[i]+w-t[j]; if(c>0){ wait[j]=c; } else{ wait[j]=0; w-=c; } if(j>0)wait[j]+=wait[j-1]; } cout<<wait[n-1]<<endl; } 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 | #include<iostream> using namespace std; long long int t[200000]; long long int wait[200000]; int d[200000]; int main() { int n,m; cin>>n>>m; for(int i=0;i<n;i++)cin>>t[i]; for(int i=0;i<m;i++)cin>>d[i]; for(int i=0;i<m;i++){ int w=0; for(int j=0;j<n;j++){ int c=(j+1)*d[i]+w-t[j]; if(c>0){ wait[j]=c; } else{ wait[j]=0; w-=c; } if(j>0)wait[j]+=wait[j-1]; } cout<<wait[n-1]<<endl; } return 0; } |