#include <bits/stdc++.h>
using namespace std;
typedef pair<long long int,long long int> pll;
typedef pair<pll,int> ppi;
const int MAXN = 100005;
int y_sum[MAXN];
long double prob[MAXN],yp_sum[MAXN];
bool sorter(const ppi &a, const ppi &b)
{
long long int x1 = a.first.first, y1 = a.first.second;
long long int x2 = b.first.first, y2 = b.first.second;
long long int cp = (x1*y2 - x2*y1);
if(cp != 0)
return (cp > 0);
long long int d1 = x1*x1 + y1*y1, d2 = x2*x2 + y2*x2;
if(d1 != d2)
return (d1 < d2);
return (a.second < b.second);
}
int main()
{
int n;
scanf("%d", &n);
vector <ppi> A;
for (int i = 0; i < n; ++i)
{
int x,y,p;
scanf("%d %d %d", &x, &y, &p);
A.push_back(ppi(pll(x,y),i));
prob[i] = p/100.0;
}
sort(A.begin(), A.end(), sorter);
for (int i = 0; i < n; ++i)
{
A.push_back(A[i]);
A.back().first.first*=-1;
A.back().first.second*=-1;
}
long double ans = 0, tot_y = 0;
for (int i = 0; i < A.size(); ++i)
{
long double y = A[i].first.second/2.0 + tot_y;
y-=yp_sum[A[i].second];
y+=y_sum[A[i].second];
ans-=y*A[i].first.first*prob[A[i].second];
long double yp = A[i].first.second*prob[A[i].second];
tot_y+=yp;
yp_sum[A[i].second]+=yp;
y_sum[A[i].second]+=A[i].first.second;
}
double fans = ans;
printf("%.10lf\n", fans);
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnR5cGVkZWYgcGFpcjxsb25nIGxvbmcgaW50LGxvbmcgbG9uZyBpbnQ+IHBsbDsKdHlwZWRlZiBwYWlyPHBsbCxpbnQ+IHBwaTsKY29uc3QgaW50IE1BWE4gPSAxMDAwMDU7CmludCB5X3N1bVtNQVhOXTsKbG9uZyBkb3VibGUgcHJvYltNQVhOXSx5cF9zdW1bTUFYTl07CmJvb2wgc29ydGVyKGNvbnN0IHBwaSAmYSwgY29uc3QgcHBpICZiKQp7Cglsb25nIGxvbmcgaW50IHgxID0gYS5maXJzdC5maXJzdCwgeTEgPSBhLmZpcnN0LnNlY29uZDsKCWxvbmcgbG9uZyBpbnQgeDIgPSBiLmZpcnN0LmZpcnN0LCB5MiA9IGIuZmlyc3Quc2Vjb25kOwoJbG9uZyBsb25nIGludCBjcCA9ICh4MSp5MiAtIHgyKnkxKTsKCWlmKGNwICE9IDApCgkJcmV0dXJuIChjcCA+IDApOwoJbG9uZyBsb25nIGludCBkMSA9IHgxKngxICsgeTEqeTEsIGQyID0geDIqeDIgKyB5Mip4MjsKCWlmKGQxICE9IGQyKQoJCXJldHVybiAoZDEgPCBkMik7CglyZXR1cm4gKGEuc2Vjb25kIDwgYi5zZWNvbmQpOwp9CmludCBtYWluKCkKewoJaW50IG47CglzY2FuZigiJWQiLCAmbik7Cgl2ZWN0b3IgPHBwaT4gQTsKCWZvciAoaW50IGkgPSAwOyBpIDwgbjsgKytpKQoJewoJCWludCB4LHkscDsKCQlzY2FuZigiJWQgJWQgJWQiLCAmeCwgJnksICZwKTsKCQlBLnB1c2hfYmFjayhwcGkocGxsKHgseSksaSkpOwoJCXByb2JbaV0gPSBwLzEwMC4wOwoJfQoJc29ydChBLmJlZ2luKCksIEEuZW5kKCksIHNvcnRlcik7Cglmb3IgKGludCBpID0gMDsgaSA8IG47ICsraSkKCXsKCQlBLnB1c2hfYmFjayhBW2ldKTsKCQlBLmJhY2soKS5maXJzdC5maXJzdCo9LTE7CgkJQS5iYWNrKCkuZmlyc3Quc2Vjb25kKj0tMTsKCX0KCWxvbmcgZG91YmxlIGFucyA9IDAsIHRvdF95ID0gMDsKCWZvciAoaW50IGkgPSAwOyBpIDwgQS5zaXplKCk7ICsraSkKCXsKCQlsb25nIGRvdWJsZSB5ID0gQVtpXS5maXJzdC5zZWNvbmQvMi4wICsgdG90X3k7CgkJeS09eXBfc3VtW0FbaV0uc2Vjb25kXTsKCQl5Kz15X3N1bVtBW2ldLnNlY29uZF07CgkJYW5zLT15KkFbaV0uZmlyc3QuZmlyc3QqcHJvYltBW2ldLnNlY29uZF07CgkJbG9uZyBkb3VibGUgeXAgPSBBW2ldLmZpcnN0LnNlY29uZCpwcm9iW0FbaV0uc2Vjb25kXTsKCQl0b3RfeSs9eXA7CgkJeXBfc3VtW0FbaV0uc2Vjb25kXSs9eXA7CgkJeV9zdW1bQVtpXS5zZWNvbmRdKz1BW2ldLmZpcnN0LnNlY29uZDsKCX0KCWRvdWJsZSBmYW5zID0gYW5zOwoJcHJpbnRmKCIlLjEwbGZcbiIsIGZhbnMpOwoJcmV0dXJuIDA7Cn0=