10690 分面包

时间限制:1000MS  内存限制:65535K

题型: 编程题   语言: 无限制

Description

在大一的时候,XCC还在stu union打酱油~~~~和十三还有奶子他们去外面吃吃喝喝是常有的事。
大家都知道空腹喝酒是有害肚子滴,所以呢,要买一些面包来下酒。不过我们有个习惯,
就是所有的n个人,每个人分得的面包必须长度相等(长度相等的面包的量是一样的),
同时捏~给每个人分面包时,分得的小面包必须是来自同一块面包的,即不能把两个不同面包各切一部分下来凑合成一份面包来分。
现在一起来的有n个人,买了m个面包,求每人分得的最长面包长度。

输入格式

第一行是人数 n 和面包数目 m (3<= n <= 16 , 1 <= m <= 100),第二行 m 个数字表示 m 个面包的长度 L ,均为整数( 1 <= L <= 1000000)

输出格式

每人分得的最长面包长度,保留2位小数

输入样例

3  3
3 3 3

输出样例

3.00

提示

注意题目描述

//scau_Joseph 注:每个人只能有一条面包,而一条面包可以分给若干个人,所以一个人手中的面包可以是不完整的(即被切过),最终每个人的面包是相同长度,剩余的不管

来源

scau_acm

作者

scau_acm

 #include<iostream>
#include<cstring>
#include<cstdio>
#include<cmath>
#include<algorithm> using namespace std; int store[]; int main()
{
// freopen("input.txt", "r", stdin);
int n, m, cnt = , len;
double res = ;
scanf("%d%d", &n, &m);
memset(store, , sizeof(store));
for(int i=; i<m; ++i)
{
scanf("%d", &len);
store[cnt++] = len;
}
sort(store, store+cnt);
double mid, maxn = store[cnt-], minn = ;
int sum = , flag = ;
mid = (minn + maxn)/;
while(maxn - minn > 0.000001)
{
mid = (minn + maxn)/;
sum = ;
for(int i=cnt-; i>=; --i)
{
int temp = (int)floor(1.0*store[i]/mid);
sum += temp;
if(sum >= n || store[i] < mid) break;
}
if(sum >=n) minn = mid;
else maxn = mid;
}
printf("%.2lf\n", mid); return ;
}

最新文章

  1. 排序算法练习--JAVA(插入、直接选择、冒泡、快速排序、非递归快速排序)
  2. Java--&gt;多线程复制(文件指针)
  3. Reservoir Sampling - 蓄水池抽样
  4. jquery.cookie.js使用介绍
  5. Java之跳出多重循环
  6. Struts2与ajax整合之缺点
  7. Python学习之路——函数
  8. CentOS 7 网卡命名修改为ethx格式
  9. [转帖] Linux 时间参数
  10. Redis sortedset实现元素自动过期
  11. Node.js面试题之2017
  12. Scala依赖注入
  13. SpringCloud Feign
  14. VC++界面编程之--仿Facebook透明登录窗体
  15. js 锚点定位【转】
  16. 【函数封装】javascript判断移动端操作系统为android 或 ios 或 iphoneX
  17. Python+Selenium学习--上传文件
  18. Description Resource Path LocationType Java compiler level does not match the version of the instal
  19. java jar 自启动 centos7 systemctl
  20. JavaScript基础-DAY2

热门文章

  1. HDU 4664 Triangulation(SG函数)
  2. [lintcode the-smallest-difference]最小差(python)
  3. leetcode:Add Two Numbers
  4. phpStorm中ftp的配置与使用
  5. Bootstrap_组件
  6. git和其他版本控制系统的区别
  7. ASP.NET MVC+EasyUI+Entity FrameWork 整合开发
  8. BZOJ3674: 可持久化并查集加强版
  9. BZOJ 4269 再见Xor
  10. 【Python】菜鸟的基本课程继续中