二分法
accosmos
这个作者很懒,什么都没留下…
展开
-
uva714二分法
题意:把一个m个数的正整数序列划分成指定的若干序列,使得各个子序列和的最大值最小。 分析:二分法,将最大值逐渐缩小,直到可以划分。 #include <cstdio> #include <cstring> #include <cmath> #include <string> #include <algorithm> #define ...原创 2019-02-16 06:45:53 · 136 阅读 · 0 评论 -
uva1616二分加误差处理
题意:给定n个线段,求一个最大长度,使得每个线段都不相交 分析:因为要找线段的最大长度,所以可以用二分法来迭代。当误差小于一个值的时候就退出。 但是题目主要考的好像是精度处理。将长度化为分数。 可以想到最大的分母是n(n个线段一样大,并且l和r都一样) 枚举分母从1~r,找到误差最小的。 #include<iostream> #include<string.h>...原创 2019-02-22 08:22:31 · 174 阅读 · 0 评论 -
uva1618
题意:对于一个长度为n的序列,找到四个数,np,nq,ns,nr使得nq>nr>np>ns或nq<nr<np<ns。 分析:枚举p,和q,剩下的就是找p和q区间的最值问题。 RMP问题,有一个高效的算法是ST算法 ST算法实际上就是动态规划,mp[i,j]表示从i开始长度为为2^j的区间(包含i)内的最值,那么将mp的区间分成mp[i,j-1],mp[i+...原创 2019-02-23 09:13:29 · 264 阅读 · 0 评论