Submission #626450

#TimeUsernameProblemLanguageResultExecution timeMemory
626450Abrar_Al_SamitJust Long Neckties (JOI20_ho_t1)C++17
0 / 100
0 ms212 KiB
#include<bits/stdc++.h> using namespace std; void PlayGround() { int n; cin>>n; vector<pair<int,int>>a(n+1); for(int i=0; i<n+1; i++) { cin>>a[i].first; a[i].second = i; } sort(a.begin(), a.end()); int b[n]; for(int i=0; i<n; ++i) { cin>>b[i]; } sort(b, b+n); int ans[n+1] = {0}; int pre[n+1] = {0}, suf[n+1] = {0}; for(int i=0; i<n; ++i) { int strangeness = max(0, a[i+1].first-b[i]); pre[i] = max(pre[i], strangeness); strangeness = max(0, a[i].first-b[i]); suf[i+1] = max(suf[i+1], strangeness); } for(int i=n; i>-1; --i) { if(i<n) pre[i] = max(pre[i+1], pre[i]); ans[i] = max(ans[a[i].second], pre[i]); } for(int i=0; i<=n; ++i) { if(i) suf[i] = max(suf[i], suf[i-1]); ans[i] = max(ans[a[i].second], suf[i]); } for(int i=0; i<n+1; ++i) { cout<<ans[i]<<' '; } cout<<'\n'; } int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); PlayGround(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...