#include <bits/stdc++.h>
using namespace std;
int n, p, q, maxp, maxq, hull[100005], onhull;
pair<int, int> points[100005];
long long x0p, x1p, x2p, y0p, y1p, y2p;
bool cmp(const pair<int, int> &a, const pair<int, int> &b) {
  if (a.first != b.first) {
    return a.first < b.first;
  }
  return a.second > b.second;
}
int main() {
  cin >> n >> p >> q;
  for (int i = 0; i < n; i++) {
    cin >> points[i].first >> points[i].second;
    maxp = max(points[i].first, maxp);
    maxq = max(points[i].second, maxq);
  }
  points[n++].first = maxp;
  points[n++].second = maxq;
  if (q == 0) {
    cout << setprecision(12) << (1.0 * p) / maxp;
    return 0;
  }
  if (p == 0) {
    cout << setprecision(12) << (1.0 * q) / maxq;
    return 0;
  }
  sort(points, points + n, cmp);
  hull[onhull++] = 0;
  hull[onhull++] = 1;
  while (hull[1] < n && points[hull[1]] == points[hull[0]]) hull[1]++;
  for (int i = 2; i < n; i++) {
    if (points[i] == points[hull[onhull - 1]]) continue;
    x0p = points[hull[onhull - 2]].first;
    y0p = points[hull[onhull - 2]].second;
    x1p = points[hull[onhull - 1]].first;
    y1p = points[hull[onhull - 1]].second;
    x2p = points[i].first;
    y2p = points[i].second;
    while (onhull > 1 &&
           ((y2p - y0p) * (x1p - x0p) >= (y1p - y0p) * (x2p - x0p))) {
      onhull--;
      x0p = points[hull[onhull - 2]].first;
      y0p = points[hull[onhull - 2]].second;
      x1p = points[hull[onhull - 1]].first;
      y1p = points[hull[onhull - 1]].second;
    }
    hull[onhull++] = i;
  }
  for (int i = 0; i < onhull; i++) {
    x0p = points[hull[i]].first;
    y0p = points[hull[i]].second;
    if (q * x0p == p * y0p) {
      cout << setprecision(12) << (1.0 * p) / x0p << endl;
      break;
    } else if (q * x0p > p * y0p) {
      x0p = points[hull[i]].first;
      y0p = points[hull[i]].second;
      x1p = points[hull[i - 1]].first;
      y1p = points[hull[i - 1]].second;
      double A = y1p - y0p, B = x0p - x1p, C = x1p * y0p - x0p * y1p,
             grad = (1.0 * p) / q;
      double yp = -C / (A * grad + B), xp = -C / (A + B / grad);
      cout << setprecision(12)
           << sqrt((1LL * q) * q + p * (1LL * p)) / sqrt(xp * xp + yp * yp)
           << endl;
      break;
    }
  }
}
