Submission #1325882

#TimeUsernameProblemLanguageResultExecution timeMemory
1325882tkm_algorithmsJust Long Neckties (JOI20_ho_t1)C++20
100 / 100
69 ms10228 KiB
#include <bits/stdc++.h> using namespace std; using ll = long long; #define int ll using P = pair<int, int>; #define all(x) x.begin(), x.end() #define rep(i, l, n) for (int i = l; i < (n); ++i) #define sz(x) (int)x.size() const char nl = '\n'; const int mod = 998244353; int id = 0; void solve() { int n; cin >> n; vector<P> a(n+1); vector<int> b(n); for (auto &i: a) { cin >> i.first; i.second = id++; } for (auto &i: b)cin >> i; sort(all(b)); sort(all(a)); vector<int> s(n); rep(i, 0, n) s[i] = a[i+1].first-b[i]; for (int i = n-2; i >= 0; --i)s[i] = max(s[i], s[i+1]); vector<int> res(n+1); int mx = 0; rep(i, 0, n) { res[a[i].second] = max(mx, s[i]); mx = max(mx, a[i].first-b[i]); } res[a.back().second] = mx; for (auto i: res)cout << i << " "; } int32_t main() { ios_base::sync_with_stdio(0); cin.tie(0); solve(); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...