04:网线主管

总时间限制: 1000ms 内存限制: 65536kB
描述
仙境的居民们决定举办一场程序设计区域赛。裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛。他们决定将选手的电脑用星形拓扑结构连接在一起,即将它们全部连到一个单一的中心服务器。为了组织这个完全公正的比赛,裁判委员会主席提出要将所有选手的电脑等距离地围绕在服务器周围放置。

为购买网线,裁判委员会联系了当地的一个网络解决方案提供商,要求能够提供一定数量的等长网线。裁判委员会希望网线越长越好,这样选手们之间的距离可以尽可能远一些。

该公司的网线主管承接了这个任务。他知道库存中每条网线的长度(精确到厘米),并且只要告诉他所需的网线长度(精确到厘米),他都能够完成对网线的切割工作。但是,这次,所需的网线长度并不知道,这让网线主管不知所措。

你需要编写一个程序,帮助网线主管确定一个最长的网线长度,并且按此长度对库存中的网线进行切割,能够得到指定数量的网线。

输入
第一行包含两个整数N和K,以单个空格隔开。N(1 <= N <= 10000)是库存中的网线数,K(1 <= K <= 10000)是需要的网线数量。
接下来N行,每行一个数,为库存中每条网线的长度(单位:米)。所有网线的长度至少1m,至多100km。输入中的所有长度都精确到厘米,即保留到小数点后两位。
输出
网线主管能够从库存的网线中切出指定数量的网线的最长长度(单位:米)。必须精确到厘米,即保留到小数点后两位。
若无法得到长度至少为1cm的指定数量的网线,则必须输出“0.00”(不包含引号)。
样例输入
4 11
8.02
7.43
4.57
5.39
样例输出
2.00

思路:读懂题目,这道题难度并不高。需要注意的是每局的长度是每根网线分别整除该长度,而不是加起来的和整除。

注意边界。

代码:

#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
long long s,k;
long long l,r=-1,mid;
double x;
long long fg[10001];
int i,n;
long long love(long long mid)
{int i,sum=0;for (i=1;i<=n;i++)sum+=fg[i]/mid;return sum;
}
int main()
{int cnt;scanf("%d%d",&n,&k);for (i=1;i<=n;i++){scanf("%lf",&x);fg[i]=(int)(x*100);s+=fg[i];if (r<fg[i]) r=fg[i];} if (s/n*1.0<1) {printf("0.00");return 0;}l=0;while (l<r){mid=(l+r)/2+1;cnt=love(mid);if (cnt<k) r=mid-1;else l=mid;}printf("%.2f",l/100.0);
}

【openjudge】网线主管 二分查找相关推荐

  1. 04:网线主管——二分

    描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑用星形拓扑结构连接在一起,即将它们全部连到一个单一的中心服务器.为了组织 ...

  2. NOI 1.11 二分查找 04: 网线主管

    题目来源:http://noi.openjudge.cn/ch0111/04/?lang=zh_CN 04:网线主管 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要 ...

  3. 1.11编程基础之二分查找 04:网线主管

    04:网线主管 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑用星形拓扑结构连接在一起,即将它们全部连到一个单一的中心 ...

  4. openjudge1.11编程基础之二分查找 04:网线主管

    04:网线主管 总时间限制: 1000ms 内存限制: 65536kB 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑 ...

  5. Openjudge NOI题库1.11编程基础之二分查找04 网线管理

    总时间限制:  1000ms  内存限制:  65536kB 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑用星形拓扑 ...

  6. NOIP学习之二分查找:124.网线主管

    测试链接 总时间限制: 1000ms 内存限制: 65536kB 描述 仙境的居民们决定举办一场程序设计区域赛.裁判委员会完全由自愿组成,他们承诺要组织一次史上最公正的比赛.他们决定将选手的电脑用星形 ...

  7. 信息学奥赛一本通 1242:网线主管 | OpenJudge NOI 1.11 04:网线主管

    [题目链接] ybt 1242:网线主管 OpenJudge NOI 1.11 04:网线主管 [题目考点] 1. 二分答案 [解题思路] 看题目中的数据都带小数点,似乎这是实数域上的问题.但仔细分析 ...

  8. 58 - 算法 -分治问题 - 循环 二分查找 OpenJudge 百练 4143和为给定数

    #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cstdio> #include <cmath ...

  9. 【二分枚举】04:网线主管

    还是二分搜索枚举解空间的题目. 代码思路基本上就是,找到解空间的上下限[base,top],然后main函数里面进行二分枚举,另外需要写一个判断某个值是否合法的函数. 04:网线主管 总时间限制:  ...

最新文章

  1. 人算不如“云算”,且看新时代“借东风”
  2. Mysql搭建主从服务器
  3. jar包 和 war包?
  4. Linux学习笔记01
  5. python rgb led控件_用树莓派实现RGB LED的颜色控制——Python版本
  6. linux的物理内存中swap压缩,linux中Centos7增加swap分区详解
  7. 求素数mdp c语言问题,C语言使用深度优先搜索算法解决迷宫问题(堆栈)
  8. python中使用什么来实现异常捕捉_python 异常捕捉
  9. oracle显示一个月的所有天数
  10. c语言鸡兔同笼的程序,C语言:鸡兔同笼问题
  11. c语言许多名字随机抽取名字,怎么用ppt实现一个随机抽取名字的功能
  12. 国防科技大学 educoder C语言答案(湖南工业大学)
  13. QQ号1941663132是一个诈骗
  14. Beta周王者荣耀交流协会第一次Scrum会议
  15. win10每回打开程序都弹出“是否允许更改设置”提示怎么办
  16. Android发送短信的两种方法
  17. np.meshgrid, ravel(), np.c_, plt.contourf()函数的用法,以及决策边界的画法。
  18. [综][PDPTW]A survey on pickup and delivery problems
  19. java 秒表暂停_java – 停止秒表
  20. qqwry 纯真IP数据小工具 nali

热门文章

  1. 中英文混合的关系导致列没有对齐
  2. list 获取元素 java_获取List中元素的类型,其中List是Java中方法的返回类型
  3. ROS学习心得——定位-SLAM-hector_mapping(RPLIDAR A2)
  4. 【答辩问题】计算机专业本科毕业设计答辩指导
  5. 深度学习-----缺乏可解释性
  6. 【交换篇】11. 按接口划分 VLAN ❀ C3750-E ❀ CISCO 交换机
  7. 《乔布斯传》英文原著重点词汇笔记(十)【 chapter eight】
  8. 模拟橄榄山增改删轴线测试
  9. 呼和浩特市C语言培训,呼市机器学习培训班
  10. windows系统安装VUE 踩地雷合集(使用webpack-simple)