제출 #1280311

#제출 시각아이디문제언어결과실행 시간메모리
1280311ducanh0811Just Long Neckties (JOI20_ho_t1)C++20
100 / 100
70 ms11688 KiB
#include <bits/stdc++.h> #define int long long #define FOR(i, a, b) for (int i = (a), _b = (b); i <= _b; ++i) #define REV(i, a, b) for (int i = (a), _b = (b); i >= _b; --i) using namespace std; #define MAXN 200005 pair<int, int> a[MAXN]; int b[MAXN]; int n; int best_pref[MAXN]; int best_suff[MAXN]; int res[MAXN]; void solve(){ cin >> n; FOR(i, 1, n + 1){ cin >> a[i].first; a[i].second = i; } FOR(i, 1, n){ cin >> b[i]; } sort(a + 1, a + 2 + n); sort(b + 1, b + 1 + n); FOR(i, 1, n) { best_pref[i + 1] = max(best_pref[i], max(0ll, a[i].first - b[i])); } REV(i, n + 1, 2){ best_suff[i - 1] = max(best_suff[i], max(0ll, a[i].first - b[i - 1])); } FOR(i, 1, n + 1) { res[a[i].second] = max(best_pref[i], best_suff[i]); } FOR(i, 1, n + 1) { cout << res[i] << ' '; } } int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(nullptr); cout.tie(nullptr); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...