Submission #1290772

#TimeUsernameProblemLanguageResultExecution timeMemory
1290772elotelo966Balloons (CEOI11_bal)C++17
100 / 100
213 ms8484 KiB
#include <bits/stdc++.h>
using namespace std;
 
#define int long long
#define OYY LLONG_MAX
#define mod 1000000007
#define faster ios_base::sync_with_stdio(false);cin.tie(NULL);cout.tie(NULL);
#define FOR for(int i=1;i<=n;i++)
#define mid (start+end)/2
#define lim 200005
#define fi first
#define se second
#define pb push_back

typedef long double lo;

int n;

int dizi[lim][2];

int32_t main(){
	faster
	cin>>n;
	
	FOR{
		cin>>dizi[i][0]>>dizi[i][1];
	}
	
	vector<pair<int,lo>> st;
	
	FOR{
		lo tut=(lo)dizi[i][1];
		while(st.size()){
			int ara=dizi[i][0]-st.back().fi;
			//cout<<i<<" "<<ara<<endl;
			lo yeni=ara*ara;
			yeni/=(lo)4*st.back().se;
			tut=min(tut,yeni);
			if(tut>st.back().se){
				st.pop_back();
			}
			else{
				break;
			}
		}
		
		st.pb({dizi[i][0],tut});
		
		cout<<fixed<<setprecision(3);
		cout<<tut<<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...