This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <bits/stdc++.h>
#define NMAX 200001
#define pb push_back
#define MOD 1000000007
#define nl '\n'
#define INF 0x3f3f3f3f
#define int long long
using namespace std;
int n,a[NMAX],c[NMAX],st[NMAX],dr[NMAX];
struct arr{
int x,poz;
bool operator <(const arr &c) const{
return x<c.x;
}
}b[NMAX];
signed main() {
cin>>n;
for(int i=1;i<=n+1;++i)
{
cin>>b[i].x;
b[i].poz=i;
}
sort(b+1,b+1+n+1);
for(int i=1;i<=n;++i)
{
cin>>a[i];
}
sort(a+1,a+1+n);
for(int i=1;i<=n;++i)
{
st[i]=b[i].x-a[i];
st[i]=max(st[i],st[i-1]);
}
for(int i=n;i>=1;--i)
{
dr[i]=b[i+1].x-a[i];
dr[i]=max(dr[i],dr[i+1]);
}
for(int i=1;i<=n+1;++i)
{
int aux=dr[i];
aux=max(aux,st[i-1]);
c[b[i].poz]=aux;
}
for(int i=1;i<=n+1;++i)
cout<<c[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... |