计算方法
chAngE_AC
这个作者很懒,什么都没留下…
展开
-
poj-1905 Expanding Rods (二分)
题意:一个板子加在两个墙之间,如果加热它,那么它就会向上弯曲,并且给出弯曲后长度的变化公式 L'=(1+n*C)*L。求变化后板子的最高处离原位置多高。 思路:普通几何题,各种做辅助线,之后设升高度为h通过h,l,r三者勾股定理得到一个等式。之后我们需要意识到的是c++里有三角函数,我们可以通过l,r求出扇形区域圆心角角度,用arcsin转化为弧度后可建立高度h与弯曲长度L’的关系。之后二分原创 2016-02-27 14:30:00 · 392 阅读 · 0 评论 -
poj-3273 Monthly Expense (二分)
题意:一共有n天的消费情况,让你分成m段,使得这m段都尽量的小,最后输出最大的那段的值。 思路:直接二分枚举一段里的值,每举出一个就来检测在该值下连续分段分出的段数,如果段数大那么答案需要大于该值,如果小,那么答案需要小于该值。 #include #include #include #include #define LL long long using namespace std;原创 2016-02-27 14:44:56 · 610 阅读 · 1 评论 -
poj-3112 Pie
题意:某人过生日,他的朋友来他家参加party并且每人都拿来一块pie,现在需要把pie都分开让每个人都能享用,并且一定保证完整性,为了能公平的分给每个人,就算浪费也可以。问最多每个人可以得到多少体积的pie 思路:由于需要求圆柱体积所以π是一个问题,我们先把所有体积里的π提出来,然后二分枚举R^2(也就是体积),最后再乘上π即可。(注意π的精度需要很高) #include #include原创 2016-02-27 14:53:30 · 510 阅读 · 0 评论 -
poj-3258 River Hopscotch (二分)
题意:奶牛过河游戏,河上有N块石头,河的总宽度为L,一位农夫感觉每个石头之间的间距太小了,所以他想通过移除M块石头来使最小的间距最大化。求最大化后的最小距离(姑且是这个题意吧,英语菜) 思路:通过二分枚举答案,使low=0,high=L,我们在得到石头的位置数组a[1...n]之后加入a[0]=0,a[n+1]=L然后排序。每次二分初始化一个区间左端点p=0,然后对于a[i]-a[p] i=1.原创 2016-02-18 15:58:27 · 426 阅读 · 0 评论