#include<cstdio>
#include<algorithm>
using namespace std;
#define N 100010
int n, v[N], s[N];
double x(int i, double t){
return s[i]+v[i]*t;
}
double f(double t){
double minx, maxx;
minx = maxx = x(1, t);
for(int i=2; i<=n; i++){
double xi = x(i, t);
minx = min(minx, xi);
maxx = max(maxx, xi);
}
return (maxx-minx);
}
int main(){
scanf("%d", &n);
for(int i=1; i<=n; i++){
scanf("%d%d", v+i, s+i);
}
int mins=s[1], maxs=s[1];
for(int i=2; i<=n; i++){
mins = min(mins, s[i]);
maxs = max(maxs, s[i]);
}
double l=0, r=maxs-mins;
while(r-l > 1e-10){
double m1=(2*l+r)/3, m2=(l+2*r)/3;
if(f(m1) < f(m2)){
r = m2;
}else{
l = m1;
}
}
printf("%.2f\n", f(l));
return 0;
}
I2luY2x1ZGU8Y3N0ZGlvPgojaW5jbHVkZTxhbGdvcml0aG0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CgojZGVmaW5lIE4gMTAwMDEwCmludCBuLCB2W05dLCBzW05dOwpkb3VibGUgeChpbnQgaSwgZG91YmxlIHQpewogICAgcmV0dXJuIHNbaV0rdltpXSp0Owp9CmRvdWJsZSBmKGRvdWJsZSB0KXsKICAgIGRvdWJsZSBtaW54LCBtYXh4OwogICAgbWlueCA9IG1heHggPSB4KDEsIHQpOwogICAgZm9yKGludCBpPTI7IGk8PW47IGkrKyl7CiAgICAgICAgZG91YmxlIHhpID0geChpLCB0KTsKICAgICAgICBtaW54ID0gbWluKG1pbngsIHhpKTsKICAgICAgICBtYXh4ID0gbWF4KG1heHgsIHhpKTsKICAgIH0KICAgIHJldHVybiAobWF4eC1taW54KTsKfQoKaW50IG1haW4oKXsKICAgIHNjYW5mKCIlZCIsICZuKTsKICAgIGZvcihpbnQgaT0xOyBpPD1uOyBpKyspewogICAgICAgIHNjYW5mKCIlZCVkIiwgditpLCBzK2kpOwogICAgfQogICAgaW50IG1pbnM9c1sxXSwgbWF4cz1zWzFdOwogICAgZm9yKGludCBpPTI7IGk8PW47IGkrKyl7CiAgICAgICAgbWlucyA9IG1pbihtaW5zLCBzW2ldKTsKICAgICAgICBtYXhzID0gbWF4KG1heHMsIHNbaV0pOwogICAgfQogICAgZG91YmxlIGw9MCwgcj1tYXhzLW1pbnM7CiAgICB3aGlsZShyLWwgPiAxZS0xMCl7CiAgICAgICAgZG91YmxlIG0xPSgyKmwrcikvMywgbTI9KGwrMipyKS8zOwogICAgICAgIGlmKGYobTEpIDwgZihtMikpewogICAgICAgICAgICByID0gbTI7CiAgICAgICAgfWVsc2V7CiAgICAgICAgICAgIGwgPSBtMTsKICAgICAgICB9CiAgICB9CiAgICBwcmludGYoIiUuMmZcbiIsIGYobCkpOwogICAgcmV0dXJuIDA7Cn0K