#include <bits/stdc++.h>
using namespace std;
int const MAX=2e5+5;
int main()
{
stack<pair<long double,long double>>stv;
int n;
cin>>n;
int i;
for(i=1;i<=n;++i){
long double x,r;
cin>>x>>r;
while(!stv.empty()){
auto [xs,rs]=stv.top();
if(r>(x-xs)*(x-xs)/(4*rs))
r=(x-xs)*(x-xs)/(4*rs);
if(r>=rs)
stv.pop();
else
break;
}
stv.push({x,r});
cout<<fixed<<setprecision(3)<<r<<'\n';
}
return 0;
}
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |