# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1180430 | pythontest | Just Long Neckties (JOI20_ho_t1) | C++20 | 77 ms | 7736 KiB |
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main() {
int n;
vector<pair<int,int>> tab,tab2;
scanf("%d",&n);
for(int i=0;i<=n;i++){
int a;
scanf("%d",&a);
tab.push_back({a,i});
}
for(int i=0;i<n;i++){
int a;
scanf("%d",&a);
tab2.push_back({a,i});
}
sort(tab.begin(),tab.end());
sort(tab2.begin(),tab2.end());
vector<int> pref(n+3,0),suf(n+3,0);
for(int i=1;i<n+1;i++)
pref[i]=max(pref[i-1],tab[i-1].first-tab2[i-1].first);
for(int i=n-1;i>=0;i--)
suf[i]=max(suf[i+1],tab[i+1].first-tab2[i].first);
vector<int> r(n+1);
for(int i=0;i<=n;i++){
r[tab[i].second]=max(pref[i],suf[i]);
}
for(int i=0;i<=n;i++) printf("%d ",r[i]);
return 0;
}
Compilation message (stderr)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |