Submission #1221552

#TimeUsernameProblemLanguageResultExecution timeMemory
1221552giorgi123glmJust Long Neckties (JOI20_ho_t1)C++20
100 / 100
79 ms10056 KiB
#include <bitset> #include <deque> #include <functional> #include <iostream> #include <map> #include <unordered_map> #include <vector> #include <algorithm> #include <array> using namespace std; #define int long long signed main () { ios::sync_with_stdio (false); cin.tie (0); cout.tie (0); int N = 0; cin >> N; vector <pair <int, int> > ties (N + 2); for (int i = 1; i <= N + 1; i++) { cin >> ties[i].first; ties[i].second = i; } vector <int> odd (N + 1); for (int i = 1; i <= N; i++) cin >> odd[i]; sort (ties.begin() + 1, ties.end()); sort (odd.begin() + 1, odd.end()); vector <int> pref (N + 1); for (int i = 1; i <= N; i++) pref[i] = max (pref[i - 1], max (ties[i].first - odd[i], 0ll)); vector <int> ans (N + 2); int curans = 0; for (int i = N + 1; i >= 1; i--) { ans[ties[i].second] = max (pref[i - 1], curans); curans = max (curans, max (ties[i].first - odd[i - 1], 0ll)); } 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...