#include <bits/stdc++.h>
using namespace std;
int n, x;
int cmnl[200005], cmnr[200005];
int ans[200005];
int main() {
    cin.tie(0) -> sync_with_stdio(0);
    cin >> n;
    vector<pair<int, int>> vec;
    for(int i=0;i<=n;i++) {
        cin >> x;
        vec.emplace_back(x, i);
    }
    sort(vec.begin(), vec.end());
    vector<int> nother(n);
    for(int &e:nother) cin >> e;
    sort(nother.begin(), nother.end());
    int cmn = 0;
    for(int i=0;i<=n;i++) {
        cmnl[i] = cmn;
        if(i != n) cmn = max(cmn, vec[i].first-nother[i]);
    }
    cmn = 0;
    for(int i=n;i>=0;i--) {
        cmnr[i] = cmn;
        if(i != 0) cmn = max(cmn, vec[i].first-nother[i-1]);
    }
    for(int i=0;i<=n;i++) {
        ans[vec[i].second] = max(i == 0 ? 0 : cmnl[i], i == n ? 0 : cmnr[i]);
    }
    for(int i=0;i<=n;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... |