标签:二分法查找
#include<algorithm>
#include<iostream>
using namespace std;
const int N=100010;
int q[N],w[N];
int n,k;
bool check(int x){
int num=0;
for(int i=0;i<n;i++){
num+=(q[i]/x)*(w[i]/x);
if(num>=k) return true;
}
return false;
}
int main(void){
cin>>n>>k;
for(int i=0;i<n;i++){
cin>>q[i]>>w[i];
}
int l=1,r=1e5;
while(l<r){
int mid=(l+r+1)/2;
if(check(mid)) l=mid;
else r=mid-1;
}
cout<<r;
}