uvalive 3635 Pie】的更多相关文章

题意:为每个小伙伴切糕,要求每个小盆友(包括你自己)分得的pie一样大,但是每个人只能分得一份pie,不能拿两份凑一起的. 做法:二分查找切糕的大小,然后看看分出来的个数有没有大于小盆友们的个数,它又没说每个pie都要分完,分不完的留给工作人员吃嘛. 代码: /* * Author: illuz <iilluzen[at]gmail.com> * Blog: http://blog.csdn.net/hcbbt * File: live3652.cpp * Create Date: 2013-…
https://vjudge.net/problem/UVALive-3635 题意: 有F+1个人要分n个蛋糕,他们得到的蛋糕的面积必须是一样的,但是每个蛋糕必须是整块的蛋糕,而不是有多块蛋糕拼成的,蛋糕的形状也可以不相同. 给出n块蛋糕各自的半径,求他们每个人能得到的蛋糕的最大面积. 思路: 使得最小值最大,那显然是二分. 二分半径,计算面积,然后枚举每个蛋糕,计算每个蛋糕可以分出来的当前面积的蛋糕会有多少个,总数是否大于等于F+1即可. 记住计算个数的时候要用floor向下取整函数,而且l…
简单的二分法应用,循环1000次精度就满足要求了. #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<string> #include<cmath> #include<map> #include<set> #include<vector> #include<algorithm>…
题意:有f+1个人来分n个圆形派,每个人得到的必须是一个整块,并且是面积一样,问你面积是多少. 析:二分这个面积即可,小了就多余了,多了就不够分,很简单就能判断. 代码如下: #pragma comment(linker, "/STACK:1024000000,1024000000") #include <cstdio> #include <string> #include <cstdlib> #include <cmath> #incl…
Pie 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 p…
https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1636 http://7xjob4.com1.z0.glb.clouddn.com/7f2d26dff99d9cc95e81c18e10aea4f5 题意:每个人分到面积相同的整块派,求能分到的最大面积 思路:二分查找面积为x的派看是否能分足够的块数 #include <…
有 f + 1 个人来分 n 个圆形派,每个人得到的必须是一整块派,而不是几块拼在一起,并且面积要相同.求每个人最多能得到多大面积的派(不必是圆形). 这题很好做,使用二分法就OK. 首先在读取所有派的半径后处理出所有派的面积,并且记录最大的那个派的面积.然后从 0 ~ maxsize 二分枚举一下,就能得到答案. 此外,这道题最后输出保留小数位数可以是 3, 4, 5,都可以. 附AC代码: 1: #include <stdio.h> 2: #include <math.h> 3…
题目 https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1636 题意 f+1个人分n个派,要求每个人得到面积相同(但形状可以不一样的)一块.求该最大面积. 思路 为了不像刘书思路,直接选取了当前最大的分块面积. 注意: 最终可能只吃其中的几个,较小的可能不用! 感想 1. 较小的可能不用,谢谢test case 2. 虽然简单…
题意:给出n个圆,分给n+1个人,求每个人最多能够得到多大面积的圆 二分每个人得到的圆的面积 #include<iostream> #include<cstdio> #include<cstring> #include <cmath> #include<stack> #include<vector> #include<map> #include<set> #include<queue> #inclu…
依然是一道二分查找 #include<iostream> #include<cstdio> #include<cmath> using namespace std; const double PI=acos(-1.0); int N,F; ]; bool ok(double area) { ; ;i<N;i++) sum+=floor(r[i]/area); ; } int main() { int T; cin>>T; while(T--) { ci…