Pie(poj 3122)二分法
来源:互联网 发布:荣威rx5 新款有优化吗 编辑:程序博客网 时间:2024/06/05 00:44
此题链接单击这里
=================
这题看了很久才明白题意,翻了10多篇博客才懂意思。。。。。。
题意:
N+1个人平均分F份派,派的高度为1,输入每份派半径,求平均每个人分得的派的体积。每个人只能在一份派中拿和大家一样的平均值,可以有1到N+1个人拿同一份派,但不能有一个人拿两份到F份中的派。
思路:
先把所有半径平方,找到最大平方半径。设下界为0,上界为平方半径(R^2),二分查找。每得一个mid,就用所有半径平方除以mid累加和,累加和大于等于F+1就往右搜,否往左搜。当上界和下界的差小于1e-5时退出。最后输出mid乘以pi。
#include <iostream>#include <cstdio>using namespace std;int main(){ int T; scanf("%d",&T); while(T--) { int N,F; double a[10010]; double l=0,r=0,mid; scanf("%d%d",&N,&F); for(int i=0;i<N;i++) { scanf("%lf",a+i); a[i]*=a[i]; if(a[i]>r) r=a[i]; } while(r-l>1e-5) { int sum=0; mid=l+(r-l)/2; for(int i=0;i<N;i++) sum+=a[i]/mid; if(sum>=F+1) l=mid; else r=mid; } printf("%.4lf\n",mid*3.14159265358); }}
有问题联系企鹅791267032
邮箱地址….wutanrong@Hotmail.com
0 0
- Pie(poj 3122)二分法
- 二分法入门Poj 3122-Pie
- poj 3122 Pie(二分法)
- POJ 3122/HDU 1969-Pie-二分法分馅饼
- 二分法-Pie
- 二分法--Pie
- POJ-3122 Pie
- POJ 3122 Pie 二分
- POJ 3122 Pie 二分
- poj 3122 pie
- POJ 3122 Pie
- poj 3122 la3635 pie
- POJ 3122 Pie
- POJ-3122-Pie
- POJ 3122 Pie
- POJ 3122 Pie
- poj 3122 Pie
- poj 3122 pie
- poj 3370 抽屉原理
- ios8后点击通讯录跳转
- C++ STL 队列 QUEUE
- The Swift Programming Language 中文版 Swift2.0学习
- 创建APPLEID 和申请成为开发者
- Pie(poj 3122)二分法
- 欢迎使用CSDN-markdown编辑器
- 【Android应用开发技术:图像处理】章节列表
- iOS UItableviewcell选择背景颜色和字体颜色设置
- 【Android应用开发技术:网络通信】章节列表
- Java编程中“为了性能”需做的26件事
- 【Android应用开发技术:文件读写】章节列表
- Http标准协议Android网络框架——NoHttp
- 【Android应用开发技术:应用调试】章节列表