Submission #1220885

#TimeUsernameProblemLanguageResultExecution timeMemory
1220885mariamtsagareliJust Long Neckties (JOI20_ho_t1)C++20
100 / 100
65 ms16452 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int n; cin>>n; vector<ll>a(n+1),b(n); for(int i=0;i<=n;i++)cin>>a[i]; for(int i=0;i<n;i++)cin>>b[i]; vector<pair<ll,int>>c(n+1); for(int i=0;i<=n;i++)c[i]={a[i],i}; sort(c.begin(),c.end()); sort(b.begin(),b.end()); vector<ll>d(n),e(n); for(int i=0;i<n;i++){ d[i]=max(c[i].first - b[i], 0LL); e[i]=max(c[i+1].first - b[i], 0LL); } vector<ll>L(n+1),R(n+1),ans(n+1); L[0]=0; for(int i=1;i<=n;i++) L[i]=max(L[i-1], d[i-1]); R[n]=0; for(int i=n-1;i>=0;i--) R[i]=max(R[i+1], e[i]); for(int i=0;i<=n;i++){ ans[c[i].second] = max(L[i], R[i]); } for(int i=0;i<=n;i++){ cout<<ans[i]<<(i<n?' ':'\n'); } return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...