POJ3122Pie(二分)
http://poj.org/problem?id=3122
题意 :这个题最主要的就是审题要仔细,翻译不要漏句子。题目讲的是我要过生日,要给好友分馅饼(还有自己也想要一块),怕引起不公,所以每个人大小要一样,形状可以不一样,还有一句很重要,就是第一段最后那里,每个人得到的pie应该是馅饼的一块,而不是很多块零零碎碎的那种,因为那样的话就变成求平均值了 。
思路:这个理解了题意之后,就猜得到用二分了。表示一开始真的以为是求平均值来着,实际上不是,举个例子,1,2,3,三块馅饼,若每人分得的大小为2,则第一块小于2,丢弃,第二块正好等于2,第三块剩下一个1,丢弃,所以不要理解成求平均值,这个的上下界我感觉是不太好找,下界的话就是谁都分不到,上界就是每个人都有一个整的馅饼。
#include <iostream>
#include <cstdio>
#include <cmath>
#include <algorithm> using namespace std; const double pi = acos(-1.0) ;
const double eps = 1e- ; int main()
{
int T ;
scanf("%d",&T) ;
for(int i = ; i < T ; i++)
{
int N,F ;
scanf("%d %d",&N,&F) ;
F = F+ ;
double high = ,a[];
for(int j = ; j < N ; j++)
{
scanf("%lf",&a[j]) ;
a[j] = a[j]*a[j] ;
high = max(a[j],high) ;
}
double low = 0.0 ;
double mid ;
while(high - low > eps)
{
int cnt = ;
mid = (low+high)/ ;
for(int j = ; j < N ; j++)
cnt += (int )(a[j]/mid) ;
cnt < F?(high = mid):(low = mid );
}
printf("%.4lf\n",pi*mid) ;//因为上边求面积的时候没有乘pi,所以这里乘上,比较方便
}
return ;
}
POJ3122Pie(二分)的更多相关文章
- BZOJ1012: [JSOI2008]最大数maxnumber [线段树 | 单调栈+二分]
1012: [JSOI2008]最大数maxnumber Time Limit: 3 Sec Memory Limit: 162 MBSubmit: 8748 Solved: 3835[Submi ...
- BZOJ 2756: [SCOI2012]奇怪的游戏 [最大流 二分]
2756: [SCOI2012]奇怪的游戏 Time Limit: 40 Sec Memory Limit: 128 MBSubmit: 3352 Solved: 919[Submit][Stat ...
- 整体二分QAQ
POJ 2104 K-th Number 时空隧道 题意: 给出一个序列,每次查询区间第k小 分析: 整体二分入门题? 代码: #include<algorithm> #include&l ...
- [bzoj2653][middle] (二分 + 主席树)
Description 一个长度为n的序列a,设其排过序之后为b,其中位数定义为b[n/2],其中a,b从0开始标号,除法取下整. 给你一个长度为n的序列s. 回答Q个这样的询问:s的左端点在[a,b ...
- [LeetCode] Closest Binary Search Tree Value II 最近的二分搜索树的值之二
Given a non-empty binary search tree and a target value, find k values in the BST that are closest t ...
- [LeetCode] Closest Binary Search Tree Value 最近的二分搜索树的值
Given a non-empty binary search tree and a target value, find the value in the BST that is closest t ...
- jvascript 顺序查找和二分查找法
第一种:顺序查找法 中心思想:和数组中的值逐个比对! /* * 参数说明: * array:传入数组 * findVal:传入需要查找的数 */ function Orderseach(array,f ...
- BZOJ 1305: [CQOI2009]dance跳舞 二分+最大流
1305: [CQOI2009]dance跳舞 Description 一次舞会有n个男孩和n个女孩.每首曲子开始时,所有男孩和女孩恰好配成n对跳交谊舞.每个男孩都不会和同一个女孩跳两首(或更多)舞曲 ...
- BZOJ 3110 [Zjoi2013]K大数查询 ——整体二分
[题目分析] 整体二分显而易见. 自己YY了一下用树状数组区间修改,区间查询的操作. 又因为一个字母调了一下午. 貌似树状数组并不需要清空,可以用一个指针来维护,可以少一个log 懒得写了. [代码] ...
随机推荐
- ubuntu下mysql的环境搭建及使用
ubuntu下mysql的环境搭建及使用 环境安装 使用如下命令分别安装服务端程序,客户端程序,及客户端依赖库 sudo apt-get install mysql-server sudo apt-g ...
- jQuery 笔记
1. 选择器 http://www.runoob.com/jquery/jquery-selectors.html 2. toggle() 用来切换 hide() 和 show() 方法 ht ...
- (转)NoSQL系列:选择合适的数据库
内容目录: 为什么使用NoSQL数据库? 键值数据库 文档数据库 列族数据库 图数据库 附思维导图 参考 NoSQL系列:选择合适的数据库 为什么使用NoSQL数据库? 阻抗失衡 关系模型和内存中的数 ...
- setTimeout、clearTimeout、setInterval,clearInterval ——小小计时器
先看下效果 话不多说上代码~ <!DOCTYPE HTML> <html> <head> <meta http-equiv="Content-Typ ...
- 最小化Spring XML配置
Spring提供两种技巧,可以帮助我们减少XML的配置数量. 1.自动装配(autowiring)有助于减少甚至消除配置<property>元素和<constructor-arg&g ...
- how to Enable Client Integration
i got a problem,the problem is list cant use export to excel button in sharepoint 2010. I found my a ...
- webuploader上传插件
一:官网 http://fex.baidu.com/webuploader/ 二:示例
- SQL行列转换:报表_公司采购表_每个公司各采购了些什么产品
有同学问了个比较典型行列转换的问题,想想,解答如下:数据库有一张表: 是个公司采购表,想转化成如下报表,显示每个公司各采购了些什么产品: 哪些公司采购哪些产品是不确定的,所以报表的列有哪几项是不确定的 ...
- [OC] UITabBarController
1. New CocoaTouch class -> Select Objective C -> named RootViewController 2. Disable APC error ...
- MFC VC6++学习笔记
一.mfc中基于对话框程序添加菜单栏 1打开对话框资源,然后右键->属性->常规 里面有个"菜单" 下拉框,然后选择IDM_USER! 2打开对话框,右键属性,选择刚才 ...