hdu 1551 Cable master(二分法)
来源:互联网 发布:小米手环抢购软件 编辑:程序博客网 时间:2024/05/29 17:56
原题链接:
http://acm.hdu.edu.cn/showproblem.php?pid=1551
题目大意:
N个电缆,均分成K份。
问每份最长为多少。
思路:
求出总长度,总长度/K即每份最大值,然后与0开始二分,直到找到能分成K份的最大值。
代码如下:
#include<iostream>#include<cmath>using namespace std;const int MAXN = 10000 + 10;double cable[MAXN];int main(){int N, K;while (scanf("%d%d",&N,&K)&&(N+K)){double right = 0;for (int i = 0; i < N; i++){scanf("%lf", &cable[i]);right += cable[i];}right /= K;double left = 0, mid, ans = 0;while (abs(right - left)>0.001)//题目要求保留两位小数,所以算到第三位{int sum = 0;mid = (left + right) / 2;for (int i = 0; i < N; i++){sum += floor(cable[i] / mid);//向下取整。}if (sum<K)right = mid;else left = mid;if (sum == K&&ans < mid)ans = mid;}printf("%.2lf\n",ans);}return 0;}
0 0
- hdu 1551 Cable master(二分法)
- hdoj 1551 Cable master (二分法)
- (step4.1.4)hdu 1551(Cable master——二分法)
- hdu-1551 Cable master
- HDU-1551-Cable master
- hdu 1551 Cable master
- HDU-1551 Cable master
- hdu 1551 Cable master
- HDU 1551 Cable master
- hdoj1551 Cable master【二分法】
- Cable master--hdu1551(二分法)
- 【HDU】1551 - Cable master(二分)
- 【HDU】-1551-Cable master(二分)
- HDU:1551 Cable master(二分)
- 【HDU 1551】Cable master(二分)
- hdu 1551Cable master(二分)
- HDU 1551 Cable master(二分)
- HDU 1551 Cable master 二分
- MFC中获得各个类的指针/句柄 ID的总结
- HDU 5035 Delivery (2014年北京赛区网络赛D题)
- 第三方应用分享到微信朋友圈功能
- parseInt() 和强制转换的区别(int)
- xml的增,删,改,查
- hdu 1551 Cable master(二分法)
- KVC的步骤 以及重点
- UC/OS II 任务管理(2)之就绪表和就绪组
- Codeforces Gym 100340C ePig 模拟
- 登陆界面的数据处理(一)
- Leetcode229 Majority Element II
- expect
- c#使用itextsharp输出pdf(动态填充表单内容,显示中文)
- mysql 事务 与 数据库引擎