#include <bits/stdc++.h>
using namespace std;
long long n, m, k, a[10], e[10];
long double ans, ans1, ji;
void dfs(long long x, long long dat, long long cnt, long long b) {
  if (x == n + 1) {
    if (cnt > n / 2)
      ans += dat * 1.0;
    else
      ans += dat * k * 1.0 / (k + b);
    ji += dat * 1.0;
    return;
  }
  dfs(x + 1, dat * e[x] / 10, cnt + 1, b);
  dfs(x + 1, dat * (100 - e[x]) / 10, cnt, b + a[x]);
}
void dfs1(long long x, long long pre) {
  if (x > m) {
    ans = 0, ji = 0;
    dfs(1, 1, 0, 0);
    ans1 = max(ans1, ans / (pow(10, n)));
    return;
  }
  for (long long i = pre; i <= n; i++) {
    if (e[i] == 100) continue;
    e[i] += 10;
    dfs1(x + 1, i);
    e[i] -= 10;
  }
}
signed main() {
  cin >> n >> m >> k;
  for (long long i = 1; i <= n; i++) cin >> a[i] >> e[i];
  long long dui = 0;
  dfs1(1, 0);
  printf("%.10Lf", ans1);
}
