# | Time | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
1167561 | LmaoLmao | Balloons (CEOI11_bal) | C++20 | 0 ms | 0 KiB |
#include<bits/stdc++.h>
#define fi first
#define se second
#define name ""
#define double long double
#define int long long
using namespace std;
using ll = long long;
using ii = pair<ll, ll>;
using aa = array<int,3>;
long double a[200005][2];
signed main()
{
ios_base::sync_with_stdio(false);
cin.tie(NULL);
//freopen(name".inp", "r", stdin);
//freopen(name".out", "w", stdout);
int n;
cin >> n;
stack<int> st;
for(int i=1;i<=n;i++) {
cin >> a[i][0] >> a[i][1];
long double r=a[i][1];
while(!st.empty()) {
int cur=st.top();
long double res=(a[cur][0]-a[i][0])*(a[cur][0]-a[i][0])/(4*a[cur][1]);
r=min(r,res);
if(r<a[cur][1]) break;
st.pop();
}
st.push(i);
a[i][1]=r;
cout << r << endl;
}
return 0;
}
/*
██╗░░██╗██╗░░██╗░█████╗░███╗░░██╗░██████╗░ ░██████╗██╗██╗░░░██╗ ░█████╗░██╗░░░██╗████████╗███████╗
██║░██╔╝██║░░██║██╔══██╗████╗░██║██╔════╝░ ██╔════╝██║██║░░░██║ ██╔══██╗██║░░░██║╚══██╔══╝██╔════╝
█████═╝░███████║███████║██╔██╗██║██║░░██╗░ ╚█████╗░██║██║░░░██║ ██║░░╚═╝██║░░░██║░░░██║░░░█████╗░░
██╔═██╗░██╔══██║██╔══██║██║╚████║██║░░╚██╗ ░╚═══██╗██║██║░░░██║ ██║░░██╗██║░░░██║░░░██║░░░██╔══╝░░
██║░╚██╗██║░░██║██║░░██║██║░╚███║╚██████╔╝ ██████╔╝██║╚██████╔╝ ╚█████╔╝╚██████╔╝░░░██║░░░███████╗
╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚═╝╚═╝░░╚══╝░╚═════╝░ ╚═════╝░╚═╝░╚═════╝░ ░╚════╝░░╚═════╝░░░░╚═╝░░░╚══════╝
*/