제출 #1152807

#제출 시각아이디문제언어결과실행 시간메모리
1152807ezzzaySnowball (JOI21_ho_t2)C++20
33 / 100
2594 ms592 KiB
#include<bits/stdc++.h> using namespace std; #define int long long #define ff first #define ss second #define pb push_back const int N=3e5+5; int a[N]; int ans[N]; map< int, pair<int,int> > mp; signed main(){ int n,q; cin>>n>>q; int l=-1e17; vector<int>v; for(int i=1;i<=n;i++){ cin>>a[i]; v.pb(a[i]-l); l=a[i]; } v.pb(1e17); int s=0; while(q--){ int x; cin>>x; s+=x; if(s==0)continue; if(s>0){ for(int i=0;i<=n;i++){ // i- i+1 mp[i].ff= min(s, v[i]- mp[i].ss ); } } else{ for(int i=n;i>=0;i--){ mp[i].ss= min(abs(s), v[i]- mp[i].ff ); } } } for(int i=0;i<=n;i++){ ans[i]+=mp[i].ff; ans[i+1]+=mp[i].ss; } for(int i=1;i<=n;i++){ cout<<ans[i]<<endl; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...