rt,懒得写高精度了
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std;
const int maxn = 1e3 + 10;
struct node {
int a, b;
} a[maxn];
int n, y, ans, mul[maxn];
bool cmp(node x, node y) {
return x.a * x.b < y.a * y.b;
}
int main() {
scanf("%d %d %d", &n, mul, &y);
for (int i = 1; i <= n; i++) scanf("%d %d", &a[i].a, &a[i].b);
sort(a + 1, a + n + 1, cmp);
for (int i = 1; i <= n; i++) {
mul[i] = mul[i - 1] * a[i].a;
ans = max(ans, mul[i - 1] / a[i].b);
}
printf("%d\n", ans);
return 0;
}