#include <bits/stdc++.h>
using namespace std;
#define int long long
#define boost ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
const int inf=1e18;
const int N=2e5+100;
const int mod=1e9+7;
int a[N],b[N];
pair<int,int>p[N];
int pr[N];
int pr1[N];
int ans[N];
signed main(){
// freopen("input.txt", "r", stdin);
// freopen("output.txt", "w", stdout);
boost;
int n;
cin>>n;
for(int i=1;i<=n+1;i++){
cin>>a[i];
p[i]={a[i],i};
}
for(int i=1;i<=n;i++){
cin>>b[i];
}
sort(b+1,b+1+n);
sort(p+1,p+1+n+1);
int mx=0;
for(int i=1;i<=n;i++){
mx=max(mx,p[i].first-b[i]);
pr[i]=max(pr[i-1],max(p[i].first-b[i],0ll));
}
for(int i=n;i>=1;i--){
pr1[i]=max(pr1[i+1],max(p[i+1].first-b[i],0ll));
}
ans[p[n+1].second]=mx;
for(int i=1;i<=n;i++){
ans[p[i].second]=max(pr[i-1],pr1[i]);
}
for(int i=1;i<=n+1;i++){
cout<<ans[i]<<" ";
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |