Submission #762960

#TimeUsernameProblemLanguageResultExecution timeMemory
762960CESxRhinoJust Long Neckties (JOI20_ho_t1)C++14
0 / 100
1 ms340 KiB
#include <bits/stdc++.h> #define ii pair<int,int> #define f first #define s second #define pb push_back #define int long long #define endl '\n' using namespace std; const int MAXN = 1e18; int mod = 1e9 + 7; pair<int,int> a[200005]; int b[200005]; int prefix[200005]; int prefix2[200005]; int ans[200005]; void AcSolution() { int n; cin >> n; for(int i = 1;i <= n + 1;i++) { cin >> a[i].first; a[i].second = i; } for(int i = 1;i <= n;i++) { cin >> b[i]; } sort(b + 1,b + n + 1); sort(a + 1,a + n + 2); for(int i = 1;i <= n;i++) { prefix[i] = max({prefix[i - 1],a[i].first - b[i],0ll}); } for(int i = 2;i <= n;i++) { prefix2[i] = max({prefix2[i + 1],a[i].first - b[i - 1],0ll}); } for(int i = 1;i <= n + 1;i++) { ans[a[i].second] = max(prefix[i - 1],prefix2[i + 1]); } for(int i = 1;i <= n + 1;i++) { cout << ans[i] << " "; } cout << endl; } signed main() { // freopen("A1.inp", "r",stdin); // freopen("A1.out", "w",stdout); ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); int t = 1; // cin >> t; while(t--) { AcSolution(); } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...