//kyoprosaikoooooooooooo!!
#include <bits/stdc++.h>
#define ll long long
#define MOD 1000000007
using namespace std;
//素数判定 O(√N)
ll prime (ll abc) {
  if (abc < 2) {
    return 0;
  }
  else if (abc == 2) {
    return 1;
  }
  else if (abc % 2 == 0) {
    return 0;
  }
  double sqrtabc = sqrt(abc);
  for (int i = 3; i <= sqrtabc; i++) {
    if (abc % i == 0) {
      return 0;
    }
  }
  return 1;
}
//素因数分解(約数列挙) O(√N)
vector<ll> divisor(ll n) {
    vector<long long> ret;
    for (long long i = 1; i * i <= n; i++) {
        if (n % i == 0) {
            ret.push_back(i);
            if (i * i != n) ret.push_back(n / i);
        }
    }
    sort(ret.begin(), ret.end());
    return ret;
}
//最大公約数
ll gcd(ll x,ll y){
    if(x<y) swap(x,y);
    ll r;
    while(y>0){
        r=x%y;
        x=y;
        y=r;
    }
    return x;
}
//最小公倍数
ll lcm(ll x,ll y){
    return (ll)(x/gcd(x,y))*y;
}
int main() {
  int N, D, H;
  cin >> N >> D >> H;
  vector<vector<double>> S(N, vector<double>(2));
  for (int i = 0; i < N; i++) {
    for (int j = 0; j < 2; j++) {
      cin >> S.at(i).at(j);
    }
  }
  double ans = 0;
  for (int i = 0; i < N; i++) {
    double X = H + (S.at(i).at(1) - H) * D / (D - S.at(i).at(0));
    ans = max(X, ans);
  }
  cout << ans << endl;
}
#include <bits/stdc++.h>

using ll =long long;

using namespace std;

using Graph =vector<vector<ll> >;


int main(){
    int X,Y,Z;
    
    cin>>X>>Y>>Z;
    
    int ans=0;
    
    for(int p=0;p<10000000;p++){
        if(p*X>=Y*Z){
            ans=p;
            break;
        }
    }
    ans--;
    
    cout<<ans<<endl;
}
