POJ 2976 裸的01分数规划
来源:互联网 发布:优绘下载 mac版 编辑:程序博客网 时间:2024/05/01 14:17
题意:给你n个数对(认为是a数组和b数组吧),从中取n-m个数对,如果选第i个数对,定义x[i]=1,求R=∑(a[i]*x[i])/∑(b[i]*x[i])取得最大值时R的值。输出R*100(保留到整数)
输入:第一行 n,m。第二行 a数组的值,第三行b数组的值。以n=m=0结束。
原题:
#include <cstdio>#include <cstring>#include <algorithm>#include <iostream>using namespace std;int n,m,a[10005],b[10005];double c[10005];bool cmp(int a,int b){ return a>b;}bool judge(double k){ for(int i=1;i<=n;i++) { c[i]=a[i]-b[i]*k; } sort(c+1,c+1+n,cmp); double sum=0.0; for(int i=1;i<=m;i++) { sum+=c[i]; } return sum>=0.0;}int main(){ while(scanf("%d%d",&n,&m)&&(n||m)) { double left=0,right=0x3fffffff; m=n-m; for(int i=1;i<=n;i++) { scanf("%d",&a[i]); } for(int i=1;i<=n;i++) { scanf("%d",&b[i]); } for(int i=1;i<=100;i++) { double mid=(left+right)/2.0; if(judge(mid)) { left=mid; } else right=mid; } left=left*100; printf("%.0f\n",left); }}
0 0
- POJ 2976 裸的01分数规划
- POJ 2976 01分数规划
- 01 分数规划 poj 2976
- poj 2976 分数规划
- poj 2976 Dropping tests(基础的01分数规划)
- POJ 2976 Dropping tests 01分数规划
- POJ 2976 Dropping tests 01分数规划
- poj-2976-Dropping tests-01分数规划
- POJ 2976 Dropping tests 01分数规划
- POJ 2976 01分数规划基础题目
- 【POJ】2976 Dropping tests 01分数规划
- [poj 2976]Dropping tests 01分数规划
- poj 2976(01分数规划最基础)
- POJ 2976,3111 01分数规划
- POJ 2976 Dropping tests (01分数规划)
- POJ 2976 Dropping tests(01分数规划)
- POJ - 2976 Dropping tests 01分数规划
- POJ 2976 Dropping tests 01分数规划
- Android笔记37: Sensor.TYPE_ORIENTATION 方向传感器,转向晕了个头
- jsp page指令详解
- 我是一个线程
- bzoj 3531: [Sdoi2014]旅行 树链剖分
- 减肥计划走起
- POJ 2976 裸的01分数规划
- 求x的n次方
- linux下查看已经安装的jdk 并卸载jdk
- <C#入门经典>学习笔记3之类型转换与枚举
- bzoj 4459: [Jsoi2013]丢番图 数学
- 快速排序(qsort)
- Has your conversion rate changed? An introduction to Bayesian timeseries analysis with Python.
- 输入成绩查看等级
- 各种优化方法总结比较(sgd/momentum/Nesterov/adagrad/adadelta)