Submission #201566

#TimeUsernameProblemLanguageResultExecution timeMemory
201566theStaticMindJust Long Neckties (JOI20_ho_t1)C++14
100 / 100
313 ms20324 KiB
#include<bits/stdc++.h> #define pb push_back #define ii pair<int,int> #define all(x) (x).begin(),(x).end() #define INF 100000000000000000 #define modulo 1000000007 #define mod 998244353 #define int long long int using namespace std; int32_t main(){ ios_base::sync_with_stdio(false); cin.tie(NULL); // freopen("q.gir","r",stdin); // freopen("q.cik","w",stdout); int n; cin >> n; vector<ii> W; vector<int> arr; map<int,int> data; vector<int> ans(n + 1, INF); for(int i = 0; i <= n; i++){ int x; cin >> x; W.pb({x, i}); } for(int i = 0; i < n; i++){ int x; cin >> x; arr.pb(x); } sort(all(W)); sort(all(arr)); for(int i = 1; i <= n; i++){ data[W[i].first - arr[i - 1]]++; } ans[W[0].second] = data.rbegin()->first; for(int i = 1; i <= n; i++){ if(--data[W[i].first - arr[i - 1]] == 0)data.erase(W[i].first - arr[i - 1]); data[W[i - 1].first - arr[i - 1]]++; ans[W[i].second] = data.rbegin()->first; } for(int i = 0; i <= n; i++)cout << max(0ll, ans[i]) << "\n"; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...