Submission #554819

#TimeUsernameProblemLanguageResultExecution timeMemory
554819PagodePaivaJust Long Neckties (JOI20_ho_t1)C++14
9 / 100
1078 ms3204 KiB
#include<bits/stdc++.h>
#define ms(v) memset(v, -1, sizeof v)
#define pb push_back
#define mp make_pair
#define N 200100
using namespace std;

int n;
int a[N], b[N];
vector <int> savea;
/*
int busca(int x){
    int l = 0, r = n+2;

    while(l < r){
        int mid = (l + r)/2;

        if(a[mid] == x) return mid;
        if(a[mid] > x) l = mid;
        if(a[mid] < x) r = mid;
    }

    return 0;
}
*/

int solve(int id){
    //int rem = busca(a[i]);

    int maxi = -1;
    int eps = 0;
    bool sera = true;

    for(int i = 0;i < n;i++){
        if(a[i] == savea[id] and sera){
            eps++;
            i--;
            sera = false;
            continue;
        }

        if(max(a[i+eps] - b[i], 0) > maxi) maxi = max(a[i+eps] - b[i], 0);
    }

    return maxi;
}

int main(){
    ios::sync_with_stdio(false); cin.tie(0);

    cin >> n;

    for(int i = 0;i <= n;i++){
        cin >> a[i]; savea.pb(a[i]);
    }

    for(int i = 0;i <= n-1;i++){
        cin >> b[i];
    }

    sort(a, a + n + 1);
    sort(b, b + n);
    for(int i = 0;i <= n;i++) cout << solve(i) << " ";

    return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...