#include<bits/stdc++.h>
using namespace std;
#define int long long
const double Inf=1e-7;
inline int read() {
int x=0,y=1;
char c=getchar();
while(c<'0'||c>'9') {
if(c=='-')
y=-1;
c=getchar();
}
while(c<='9'&&c>='0') {
x=x*10+c-'0',c=getchar();
}
return x*y;
}
void write(int x) {
if(x<0) putchar('-');
if(x>9) write(x / 10);
putchar(x%10+'0');
}
double mid1,mid2;
int n;
const int maxl=30;
double x[maxl];
double f(double p){
double sum=0;
for(int i=0;i<=n;i++){
sum+=x[i]*pow(p,i);
}
return sum;
}
signed main(){
n=read();
double l,r;
cin>>l>>r;
for(int i=n;i>=0;i--){
x[i]=read();
}
while(r-l>Inf){
mid1=l+(r-l)/3.0;
mid2=r-(r-l)/3.0;
double f1=f(mid1);
double f2=f(mid2);
if(f1<f2){
l=mid1;
}
else{
r=mid2;
}
}
cout<<l;
return 0;
}