@[Alan0518](/user/495376) 改了一点点后AC了~~求关~~
```cpp
#include<bits/stdc++.h>
using namespace std;
const int N=1e5+5;
double a[N],b[N],n,p,sum;
bool cheak(double mid){
double time=p*mid;
for(int i=1;i<=n;i++){
if(a[i]*mid-b[i]>0){
time=time-(a[i]*mid-b[i]);
}
if(time<=0){
return 0;
}
}
return 1;
}
int main(){
cin>>n>>p;
for(int i=1;i<=n;i++){
cin>>a[i]>>b[i];
sum+=a[i];
}
if(sum<=p){
cout<<-1;
return 0;
}
double l=0,r=1e18,mid;
while(l<=r){
mid=(l+r)/2;
if(cheak(mid)){
l=mid+1e-6;
}
else{
r=mid-1e-6;
}
}
printf("%f",r);
return 0;
}
```
by zqh123bc @ 2024-03-30 22:29:23