Submission #382186

#TimeUsernameProblemLanguageResultExecution timeMemory
382186MODDILightning Conductor (POI11_pio)C++14
27 / 100
1100 ms4572 KiB
#include <bits/stdc++.h>
#define ll long long
#define pii pair<int,int>
#define pll pair<ll,ll>
#define vi vector<int>
#define vl vector<ll>
#define mp make_pair
#define pb push_back
using namespace std;
int n;
vl arr;
bool check(int height, int pos){
	for(int i = 0; i < n; i++){
		if(i == pos)
			continue;
		else{
			if(arr[i]<= arr[pos] + height - sqrt(abs(i - pos)))
				continue;
			else
				return false;
		}
	}
	return true;
}	
int main(){
	
	cin>>n;
	for(int i = 0; i < n; i++){
		int a;
		cin>>a;
		arr.pb(a);
	}
	for(int i = 0; i < n; i++){
		int l = 1, r = 10000000, mid;
		while(l <= r){
		    mid = (l + r) / 2;
			bool good = check(mid, i);
			if(good)
				r = mid - 1;
			else
				l = mid + 1;
		}
		cout<<l<<endl;
	}
	return 0;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...