Submission #387925

#TimeUsernameProblemLanguageResultExecution timeMemory
387925nikatamlianiJust Long Neckties (JOI20_ho_t1)C++14
100 / 100
124 ms14748 KiB
#include <bits/stdc++.h> #define ll long long using namespace std; const ll N = 5e5+5, oo = 1e18+10; ll a[N], b[N], ans[N], p[N], s[N], n; int main() { ios::sync_with_stdio(0); cin.tie(0); cin >> n; for(int i = 1; i <= n+1; ++i) { cin >> a[i]; } for(int i = 1; i <= n; ++i) { cin >> b[i]; } vector<int> ids(n+1); iota(ids.begin(), ids.end(), 1); sort(ids.begin(), ids.end(), [&](int x, int y) { return a[x] < a[y]; }); sort(b+1, b+n+1); for(int i = 1; i <= n+1; ++i) { p[i] = max(p[i-1], a[ids[i - 1]] - b[i]); } for(int i = n+1; i >= 1; --i) { s[i] = max(s[i+1], a[ids[i - 1]] - b[i - 1]); } for(int i = 1; i <= n+1; ++i) { ans[ids[i - 1]] = max(p[i-1], s[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...