Submission #318014

#TimeUsernameProblemLanguageResultExecution timeMemory
318014nandonathanielJust Long Neckties (JOI20_ho_t1)C++14
100 / 100
110 ms11096 KiB
#include<bits/stdc++.h>
using namespace std;
const int MAXN=200005;
typedef pair<int,int> pii;
int b[MAXN],pref[MAXN],suf[MAXN],ans[MAXN];
vector<pii> v;

int main(){
	ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
	int n,a;
	cin >> n;
	for(int i=1;i<=n+1;i++){
		cin >> a;
		v.push_back({a,i});
	}
	for(int i=1;i<=n;i++)cin >> b[i];
	sort(v.begin(),v.end());
	sort(b+1,b+n+1);
	for(int i=1;i<=n;i++){
		pref[i]=max(pref[i-1],max(v[i-1].first-b[i],0));
	}
	for(int i=n;i>=1;i--){
		suf[i]=max(suf[i+1],max(v[i].first-b[i],0));
	}
	for(int i=0;i<=n;i++){
		ans[v[i].second]=max(pref[i],suf[i+1]);
	}
	for(int i=1;i<=n;i++)cout << ans[i] << " ";
	cout << ans[n+1] << '\n';
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...