#include<bits/stdc++.h>
using namespace std;
#define int long long
#define cantinue continue
signed main()
{
int n;
cin>>n;
vector <double> x(n+1);
vector <double> r(n+1);
for(int i=1;i<=n;i++)cin>>x[i]>>r[i];
vector <double> rad(n+1);
rad[1]=r[1];
for(int i=2;i<=n;i++)
{
rad[i]=r[i];
for(int j=1;j<i;j++)
{
if((x[i]-x[j])*(x[i]-x[j])>4*r[i]*rad[j])cantinue;
rad[i]=min(rad[i],((x[i]-x[j])*(x[i]-x[j])/(4*rad[j])));
}
}
for(int i=1;i<=n;i++)cout<<fixed<<setprecision(3)<<rad[i]<<endl;
}
//§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§∞∞§
# | 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... |