#include <bits/stdc++.h>
using namespace std;
int b[16], l[16];
int r[512];
int n, k, a;
int calcB(int m) {
  int i = 0;
  int res = 0;
  for (i = 0; i < n; ++i) {
    if (m % 2 == 0) res += b[i];
    m /= 2;
  }
  return res + a;
}
double calcP(int m) {
  double res = 1.0;
  int i;
  for (i = 0; i < n; ++i) {
    if (m % 2)
      res *= l[i] / 10.0;
    else
      res *= (10 - l[i]) / 10.0;
    m /= 2;
  }
  return res;
}
double calc() {
  int i;
  double res = 0.0;
  for (i = 0; i < (1 << n); ++i) {
    double p = calcP(i);
    if (__builtin_popcount(i) * 2 > n)
      res += p;
    else {
      res += p * (1.0 * a / r[i]);
    }
  }
  return res;
}
double rec(int cur) {
  int i;
  if (cur == n || !k) {
    return calc();
  }
  double res = 0.0;
  for (i = 0; i + l[cur] <= 10 && i <= k; ++i) {
    k -= i;
    l[cur] += i;
    res = max(res, rec(cur + 1));
    k += i;
    l[cur] -= i;
  }
  return res;
}
int main() {
  int i, j;
  cin >> n >> k >> a;
  for (i = 0; i < n; ++i) {
    cin >> b[i] >> l[i];
    l[i] /= 10;
  }
  for (i = 0; i < (1 << n); ++i) {
    r[i] = calcB(i);
  }
  double res = rec(0);
  printf("%.9lf\n", res);
  return 0;
}
