http://poj.org/problem?id=2976

题目大意:给定n个二元组(a,b),从中取n-k个,使得100*∑a/∑b最大。

01分数规划裸题,设λ是小于等于最优解的,那么λ<=∑a/∑b,先通过移项来得到新的表达法∑a-λ∑b>=0。

就可以二分答案做了。

#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
typedef double dl;
const int N=1005;
const dl eps=1e-7;
dl a[N],b[N],t[N];
int n,k;
double solve(dl l,dl r){while(r-l>eps){dl mid=(l+r)/2;for(int i=1;i<=n;i++)t[i]=a[i]-mid*b[i];sort(t+1,t+n+1);dl sum=0;for(int i=k+1;i<=n;i++)sum+=t[i];if(sum>0)l=mid;else r=mid;}return r;
}
int main(){while(scanf("%d%d",&n,&k)!=EOF&&n+k){for(int i=1;i<=n;i++)scanf("%lf",&a[i]);for(int i=1;i<=n;i++)scanf("%lf",&b[i]);printf("%.f\n",solve(0,1)*100);}return 0;
}

转载于:https://www.cnblogs.com/luyouqi233/p/8266662.html

POJ2976:Dropping tests——题解相关推荐

  1. poj2976 Dropping tests(01分数规划 好题)

    https://vjudge.net/problem/POJ-2976 又是一波c++AC,g++WA的题.. 先推导公式:由题意得 Σa[i]/Σb[i]<=x,二分求最大x.化简为Σ(a[i ...

  2. POJ2976——Dropping tests(0/1分数规划)

    传送门 最简单的分数规划 对于最终答案ans,有 ans=Σai∗100Σbians=\frac{Σa_i*100}{Σb_i}ans=Σbi​Σai​∗100​ 则 Σbi∗ans=Σai∗100Σ ...

  3. [POJ2976] Dropping tests

    传送门:>Here< 题意:给出长度相等的数组a和b,定义他们的和为$\dfrac{a_1+a_2+...+a_n}{b_1+b_2+...+b_n}$.现在可以舍弃k对元素(一对即$a[ ...

  4. POJ-2976 Dropping tests 01分数规划

    题目链接:http://poj.org/problem?id=2976 很典型的01分数规划,sort+二分即可.注意精度问题,这种四舍五入的问题一般都是两种处理方法:1.printf("% ...

  5. poj2976 Dropping tests

    01分数规划裸题 为毛二分一定要打成r=mid这么恶心啊 #include<cstdio> #include<iostream> #include<cstring> ...

  6. Bailian4145 放弃考试 POJ2976 ZOJ3068 Dropping tests【二分法+01分数规划】

    4145:放弃考试 总时间限制: 1000ms 内存限制: 65536kB 描述 在一门课程中,一共有n场考试.假如你在i场考试中可以答对bi道题中的ai道,那么你的累计平均分定义为:100·Σai/ ...

  7. Dropping tests

    题目链接:http://poj.org/problem?id=2976 Dropping tests Time Limit: 1000MS   Memory Limit: 65536K Total S ...

  8. 二分+01分数规划+最大化平均值 Dropping tests POJ - 2976

    题意: 给你若n个分数,分子a[i]a[i]a[i],分母b[i]b[i]b[i],使满足公式100⋅∑i=1nai∑i=1nbi100\cdot\tfrac{\sum_{i=1}^{n} a_{i} ...

  9. 【POJ - 2976】【ZOJ - 3068】【SCU - 2992】Dropping tests (01分数规划)

    题干: In a certain course, you take n tests. If you get ai out of bi questions correct on test i, your ...

最新文章

  1. 比特币地址可以查到本人吗_查看每一个地址有多少个比特币
  2. hadoop搭建之hadoop安装
  3. 客户读取文件服务器上文件的过程,java从服务器上读取文件
  4. 像中文的罗马音字体复制_帮我把日语的罗马音弄成汉字!
  5. html页面如何嵌入word在线编辑器,网页word编辑器 网页中如何嵌入word编辑器
  6. CAN协议要点及车辆CAN协议破解
  7. fastboot 常用命令
  8. CTeX书写规范、WinEdt编写XeLaTeX、数模格式编写总结
  9. JavaScript浏览器对象之window对象详解
  10. 无人机影像的植被覆盖度、叶面积指数估算
  11. 永别了.武器------爱好和平人民的美好愿望(图)
  12. Excel如何在文本间插入分隔符
  13. 华东理工某ACMer总结
  14. 解决pip无法更新问题
  15. 关于微服务的两篇文章以及Eventuate
  16. Socket中send()函数和recv()函数详解
  17. 华为设备历史200条命令查询方法
  18. 【论文笔记】A review of applications in federated learning(综述)
  19. 股票交易接口除了通信达还有哪些
  20. 微博对现代社会的影响力——隐私的丢失与保密

热门文章

  1. 怎样配置Tomcat环境变量
  2. C# 程序Hello World
  3. 延迟初始化Spring Bean的几种方式
  4. [iOS] 使用 blockable NSTimer 避免内存泄漏
  5. SQLServer复制需要有实际的服务器名称才能连接到服务器,请指定实际的服务器名转...
  6. SBT管理java项目
  7. Vs2010创建WebService
  8. 在window7 64位下Oracle 10g 数据库中PLSQL Developer配置和使用
  9. #includeiostream与#includeiostream.h的区别
  10. Jquery取得iframe中元素的几种方法Javascript Jquery获取Iframe的元素、内容或者ID,反之也行!...