Submission #1199468

#TimeUsernameProblemLanguageResultExecution timeMemory
1199468WarinchaiJust Long Neckties (JOI20_ho_t1)C++20
100 / 100
65 ms13744 KiB
#include<bits/stdc++.h>
#define int long long
using namespace std;
vector<pair<int,int>>v;
vector<int>b;
int pre[200005];
int suf[200005];
int ans[200005];
int32_t main(){
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    int n;cin>>n;
    for(int i=1;i<=n+1;i++){
        int a;cin>>a;
        v.push_back({a,i});
    }
    sort(v.begin(),v.end());
    for(int i=1;i<=n;i++){
        int x;cin>>x;
        b.push_back(x);
    }
    sort(b.begin(),b.end());
    for(int i=1;i<=n;i++){
        pre[i]=max(v[i-1].first-b[i-1],pre[i-1]);
        //cerr<<pre[i]<<" ";
    }
    //cerr<<"\n";
    for(int i=n+1;i>1;i--){
        suf[i]=max(v[i-1].first-b[i-2],suf[i+1]);
        //cerr<<suf[i]<<" ";
    }
    //cerr<<"\n";
    for(int i=1;i<=n+1;i++){
        ans[v[i-1].second]=max(pre[i-1],suf[i+1]);
    }
    for(int i=1;i<=n+1;i++)cout<<ans[i]<<" ";
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...