第15个点TLE 求调
查看原帖
第15个点TLE 求调
1451143
czl92783719楼主2024/10/5 09:23
n,p=list(map(int,input().split()))
a=[]
b=[]
for i1 in range(n):
    a.append(0)
    b.append(0)
    a[i1],b[i1]=list(map(int,input().split()))
if p>=sum(a):
    print(-1)
else:
    ans=[0,sum(b)/(sum(a)-p)]
    while ans[1]-ans[0]>0.00004:
        ansm=sum(ans)/2
        tpe=ansm*p
        for i1 in range(n):
            if b[i1]/a[i1]<ansm:
                tpe-=a[i1]*ansm-b[i1]
        if tpe<0:
            ans[1]=ansm
        else:
            ans[0]=ansm
    print("%.4f"%ans[0])

2024/10/5 09:23
加载中...