#include <bits/stdc++.h>
using namespace std;
using ll = long long;
ll INF = 1e18;
int main() {
ios::sync_with_stdio(false);
cin.tie(nullptr);
cout.tie(nullptr);
ll n;
cin >> n;
vector<pair<ll, ll>> s(n + 1);
for (ll i = 0; i <= n; i++) {
cin >> s[i].first;
s[i].second = i;
}
vector<ll> a(n);
for (ll i = 0; i < n; i++) {
cin >> a[i];
}
sort(a.begin(), a.end());
std::sort(s.begin(), s.end());
vector<ll> answer(n + 1);
multiset<ll> st;
for (ll i = 0; i < n; i++) {
st.insert(max(-a[i] + s[i + 1].first, 0ll));
}
answer[s[0].second] = *st.rbegin();
for (ll i = 1; i <= n; i++) {
st.erase(st.find(max(-a[i - 1] + s[i].first, 0ll)));
st.insert(max(-a[i - 1] + s[i - 1].first, 0ll));
answer[s[i].second] = *st.rbegin();
}
for (ll i = 0; i < answer.size(); i++) {
cout << answer[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... |