#include <bits/stdc++.h>
using namespace std;
#define ios ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define f first
#define s second
#define pb push_back
#define ve vector
#define pii pair<int,int>
#define vi vector<int>
#define fr(n)for(int i=0;i<n;i++)
#define int long long
int32_t main(){
ios;
int n;
cin>>n;
ve<pii> a(n+1),b(n);
for(int i=0;i<=n;i++){
int k;
cin>>k;
a[i]={k,i};
}
for(int i=0;i<n;i++){
int k;
cin>>k;
b[i]={k,i};
}
ve<pii> x=a,y=b;
sort(x.begin(),x.end());
sort(y.begin(),y.end());
vi r1(n+2,0),r2(n+2,0);
for(int i=0;i<n;i++){
r1[i]=max(0LL,x[i].f-y[i].f);
if(i)r1[i]=max(r1[i],r1[i-1]);
}
map<int,int>m;
for(int i=n-1;i>=0;i--){
r2[i]=max(0LL,x[i+1].f-y[i].f);
r2[i]=max(r2[i],r2[i+1]);
}
vi r(n+1,0);
for(int i=0;i<=n;i++){
int res=r2[i];
if(i)res=max(res,r1[i-1]);
r[x[i].s]=res;
}
for(int i:r)cout<<i<<" ";
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |