#include <bits/stdc++.h>
using namespace std;
template <class T>
void chmin(T &t, T f) {
  if (t > f) t = f;
}
template <class T>
void chmax(T &t, T f) {
  if (t < f) t = f;
}
template <typename T>
T gcd(T a, T b) {
  return b ? gcd(b, a % b) : a;
}
template <typename T>
T sqr(T x) {
  return x * x;
}
template <typename T>
T cube(T x) {
  return x * x * x;
}
bool comp(const pair<int, int> &a, const pair<int, int> &b) {
  return a.second * a.first * (100 - b.first) >
         b.second * b.first * (100 - a.first);
}
int main() {
  int n;
  cin >> n;
  vector<long long> l(n);
  vector<long long> p(n);
  vector<pair<int, int> > mas(n);
  for (int i = 0; i < (int)(n); i++) {
    cin >> mas[i].second >> mas[i].first;
  }
  sort(mas.begin(), mas.end(), comp);
  for (int i = 0; i < (int)(n); i++) {
    l[i] = mas[i].second;
    p[i] = mas[i].first;
  }
  int tmp = 0;
  for (int i = 0; i < (int)(n); i++) {
    tmp += p[i];
  }
  vector<int> partSum(n);
  partSum[0] = tmp - p[0];
  for (int i = 1; i < n; i++) {
    partSum[i] = partSum[i - 1] - p[i];
  }
  long long res = 0;
  for (int i = 0; i < (int)(n); i++) {
    res += 10000 * l[i];
    res += 100 * (n - 1 - i) * l[i] * p[i];
    res -= l[i] * p[i] * partSum[i];
  }
  printf("%.10f\n", res / 10000.0);
  return 0;
}
