Submission #1189287

#TimeUsernameProblemLanguageResultExecution timeMemory
1189287boclobanchatJust Long Neckties (JOI20_ho_t1)C++20
100 / 100
67 ms6980 KiB
#include<bits/stdc++.h> using namespace std; #define ii pair<int,int> #define fi first #define se second const int MAXN=2e5+5; int pref[MAXN],suff[MAXN],ans[MAXN],V[MAXN]; ii val[MAXN]; int main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int n; cin>>n; for(int i=1;i<=n+1;i++) { cin>>val[i].fi; val[i].se=i; } for(int i=1;i<=n;i++) cin>>V[i]; sort(val+1,val+n+2); sort(V+1,V+n+1); for(int i=1;i<=n+1;i++) if(i<=n) pref[i]=max(pref[i-1],max(val[i].fi-V[i],0)); else pref[i]=pref[i-1]; for(int i=n+1;i;i--) if(i>1) suff[i]=max(suff[i+1],max(val[i].fi-V[i-1],0)); else suff[i]=suff[i+1]; for(int i=1;i<=n+1;i++) ans[val[i].se]=max(pref[i-1],suff[i+1]); for(int i=1;i<=n+1;i++) cout<<ans[i]<<" "; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...