// Source: https://usaco.guide/general/io
#include <bits/stdc++.h>
using namespace std;
#define int long long
#define fs first
#define sc second
#define pb push_back
#define rep(i,a,b) for(int i=a; i<=b; i++)
const int N=2000005;
int b[N],ans[N],pr[N],suf[N];
pair<int,int> a[N];
signed main() {
//a// 3 4 6 7
//b// 2 4 6
//1 0 0
//1 0 1
//b>a
int n;
cin>>n;
rep(i,1,n+1){
cin>>a[i].fs;
a[i].sc=i;
}
rep(i,1,n){
cin>>b[i];
}
sort(a+1,a+n+2);
sort(b+1,b+n+1);
rep(i,1,n){
pr[i]=max(pr[i-1],a[i].fs-b[i]);
}
for(int i=n+1; i>=1; i--){
suf[i]=max(suf[i+1],a[i].fs-b[i-1]);
}
rep(i,1,n+1){
ans[a[i].sc]=max(pr[i-1],suf[i+1]);
}
rep(i,1,n+1){
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... |