斜率越大的放越前面,贪心模拟一次
#include<bits/stdc++.h>
using namespace std;
#define pow(a) ((a)*(a))
int n;
struct ver
{
double a,t;
void in(){scanf("%lf%lf",&a,&t);}
#define cver const ver &
friend bool operator < (cver a,cver b){return a.a>b.a;}
}a[10000];
inline double solve()
{
double dis=0,v=0;
for (int i=0;i<n;i++)
{
double nv=v+a[i].a*a[i].t;
dis+=(pow(nv)-pow(v))/2/a[i].a;
v=nv;
}
return dis;
}
int main()
{
scanf("%d",&n);
for (int i=0;i<n;i++) a[i].in();
double a1=solve();
sort(a,a+n);
double a2=solve();
printf("%.1lf\n",a2-a1);
}