제출 #762958

#제출 시각아이디문제언어결과실행 시간메모리
762958vjudge1Just Long Neckties (JOI20_ho_t1)C++14
100 / 100
175 ms6876 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long #define fi first #define se second #define ii pair<int,int> const ll maxn=2e5+2; int n, b[maxn]; ii a[maxn]; int ans[maxn]; int x[maxn],y[maxn]; int main(){ cin>>n; for (int i=0;i<=n;++i){ cin>>a[i].fi; a[i].se=i; } for (int i=0;i<n;++i){ cin>>b[i]; } sort(a,a+n+1); sort(b,b+n); x[0]=max(a[0].fi-b[0],0); for (int i=1;i<n;++i){ x[i]=max(x[i-1],max(a[i].fi-b[i],0)); } y[n]=max(a[n].fi-b[n-1],0); for (int i=n-1;i>0;--i){ y[i]=max(y[i+1],max(a[i].fi-b[i-1],0)); } /*for (int i=0;i<n;++i){ cout<<x[i]<<" "; } cout<<endl;*/ ans[a[0].se]=y[1]; ans[a[n].se]=x[n-1]; for (int i=1;i<n;++i){ ans[a[i].se]=max(x[i-1],y[i+1]); } 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...