Submission #509607

#TimeUsernameProblemLanguageResultExecution timeMemory
509607CSQ31Just Long Neckties (JOI20_ho_t1)C++17
100 / 100
261 ms9924 KiB
#include <bits/stdc++.h> using namespace std; int b[200001],s[200001]; int ans[200001]; array<int,2>a[200001]; int main() { int n; cin>>n; for(int i=0;i<n+1;i++){ cin>>a[i][0]; a[i][1] = i; } for(int i=0;i<n;i++)cin>>b[i]; sort(b,b+n); sort(a,a+n+1); for(int i=n;i>0;i--){ s[i] = max(0,a[i][0] - b[i-1]); if(i!=n)s[i] = max(s[i],s[i+1]); } int cur = 0; for(int i=0;i<=n;i++){ ans[a[i][1]] = cur; if(i!=n){ ans[a[i][1]] = max(ans[a[i][1]],s[i+1]); cur=max(cur,a[i][0]-b[i]); } } for(int i=0;i<=n;i++)cout<<ans[i]<<" "; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...