LA3635 - Pie

原创 2015年07月09日 21:33:42

My birthday is coming up and traditionally I'm
serving pie. Not just one pie, no, I have a number
N of them, of various tastes and of various sizes. F
of my friends are coming to my party and each of
them gets a piece of pie. This should be one piece
of one pie, not several small pieces since that looks
messy. This piece can be one whole pie though.
My friends are very annoying and if one of them
gets a bigger piece than the others, they start com-
plaining. Therefore all of them should get equally
sized (but not necessarily equally shaped) pieces,
even if this leads to some pie getting spoiled (which
is better than spoiling the party). Of course, I want
a piece of pie for myself too, and that piece should also be of the same size.
What is the largest possible piece size all of us can get? All the pies are cylindrical in shape and
they all have the same height 1, but the radii of the pies can be different.
Input
One line with a positive integer: the number of test cases. Then for each test case:
One line with two integers N and F with 1 N, F 10000: the number of pies and the number
of friends.
One line with N integers ri with 1 ri 10000: the radii of the pies.
Output
For each test case, output one line with the largest possible volume V such that me and my friends can
all get a pie piece of size V . The answer should be given as a oating point number with an absolute
error of at most 10

#include <iostream>
#include <stdio.h>
#include <cmath>
using namespace std;
#define PI acos(-1)
const int MAXN = 10010;
double S[MAXN];
int N, F;
bool check(double mid)
{
    int sum = 0;
    for(int i=0; i<N; i++)
    {
        sum += floor(S[i]/mid);
    }
    return sum>=F+1;
}
int main()
{
    int t, r;
    scanf("%d",&t);
    while(t--)
    {

        scanf("%d%d",&N,&F);
        for(int i=0; i<N; i++)
        {
            scanf("%d",&r);
            S[i] = r*r*PI;
        }
        double min1 = 0, max1 = 1e14, mid;
        while(max1-min1>1e-5)
        {
            mid = (max1+min1)/2;
            if(check(mid))
            {
                min1 = mid;
            }else{
                max1 = mid;
            }
        }
        printf("%.4f\n",min1);
    }
    return 0;
}


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

Pie Chart 学习例子

1 Side Labelled Pie Chart class pietests(_DrawingEditorMixin,Drawing): def __init__(self,width...
  • wdt3385
  • wdt3385
  • 2013年08月21日 13:04
  • 1440

DSP_28335的中断PIE系统的个人理解

DSP_TMS320F28335学习了很长时间,也用了很多次。每次用完过了一段时间就忘了,每次都有重复看,后来发现看完写点东西可以加深记忆,以及后续忘了之后再看。         DSP的中断系统是编...
  • jshayouyun
  • jshayouyun
  • 2014年03月20日 20:17
  • 3976

Android 下抓包

1.android需要先root 2.安装android sdk 3.下载tcpdump http://www.strazzere.com/androidtcpdump 4.android设备连接到手...
  • xundh
  • xundh
  • 2015年05月26日 18:07
  • 1245

使用PIE对IE进行CSS3兼容介绍和经验总结

国外团队开发的兼容插件,去年做项目时才发现,非常强大 主角:PIE.js , PIE.htc 两种方法可以实现 官方网站:http://css3pie.com/ 演示地址:http://css...
  • zsjangel
  • zsjangel
  • 2014年02月03日 14:03
  • 2397

POJ 3122 Pie(简单二分)

Pie Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 12486   Accepted:...
  • yeguxin
  • yeguxin
  • 2015年07月25日 09:26
  • 738

用D3.js进行医疗数据可视化 (五) 饼图 (Pie Chart)

介绍 经过一系列对折线图的试验,这儿就来尝试一下用饼图(Pie Chart)来做医疗数据的可视化。在《用D3.js进行医疗数据可视化 (四) 堆积区图(Stacked Area Chart)》的图2中...
  • eengel
  • eengel
  • 2015年08月03日 17:05
  • 3846

Pie HDU杭电1969 【二分】

Problem Description My birthday is coming up and traditionally I'm serving pie. Not just one pie, n...
  • yuzhiwei1995
  • yuzhiwei1995
  • 2015年08月03日 13:02
  • 643

R语言的饼图(pie)学习

刚开始学习R语言, 第一篇的笔记, 长久以来作为一个数据仓库工程师,整天活在数据的矿坑中, 却一直没有涉足数据挖掘,实属惭愧。 为培养学习的兴趣和写学习笔记的良好爱好, 故选择最最简单的饼图作为分析对...
  • ForRubyDownLoad
  • ForRubyDownLoad
  • 2016年02月24日 23:41
  • 4404

checksec未完待续~

checksec是一个脚本软件,也就是用脚本写的一个文件,不到2000行,可用来学习shell。 源码参见 http://www.trapkit.de/tools/checksec.html h...
  • lineuman
  • lineuman
  • 2016年09月21日 00:04
  • 1635

Pie 【二分】

My birthday is coming up and traditionally I’m serving pie. Not just one pie, no, I have a number N ...
  • qq_37383726
  • qq_37383726
  • 2017年07月19日 17:06
  • 53
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:LA3635 - Pie
举报原因:
原因补充:

(最多只允许输入30个字)