欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

poj2976 Dropping tests

发布时间:2023/12/18 47 豆豆
生活随笔 收集整理的这篇文章主要介绍了 poj2976 Dropping tests 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

01分数规划裸题

为毛二分一定要打成r=mid这么恶心啊

#include<cstdio> #include<iostream> #include<cstring> #include<cstdlib> #include<algorithm> #include<cmath> using namespace std; typedef long long LL;int n,k; double a[1100],b[1100],c[1100]; double check(double mid) {for(int i=1;i<=n;i++)c[i]=a[i]-mid*b[i];sort(c+1,c+n+1);double ret=0;for(int i=n;i>k;i--)ret+=c[i];return ret; } int main() {while(scanf("%d%d",&n,&k)!=EOF){if(n==0&&k==0)break;for(int i=1;i<=n;i++)scanf("%lf",&a[i]);for(int i=1;i<=n;i++)scanf("%lf",&b[i]);double l=0,r=1,ans;while(r-l>1e-8){double mid=(l+r)/2;if(check(mid)>0){l=mid;}else r=mid;}printf("%.0lf\n",r*100);}return 0; }

 

转载于:https://www.cnblogs.com/AKCqhzdy/p/9415853.html

总结

以上是生活随笔为你收集整理的poj2976 Dropping tests的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。