2019年2月12日训练日记

二分法小结:

1、遇到使最大值最小、最小值最大第一反应就要是二分(有很高的概率,但也不全是二分)。

2、与枚举类似,再二分/枚举答案后,想想怎么样判断它是否合法,这个过程可以再次枚举/二分来实现。通常最终都是一个O(n)来判断是否合法的。

3、注意二分的写法,对于我的习惯而言,l~r是闭区间的话r需要+1或者直接特判。

4、注意精度。看清题目是四舍五入还是向下取整,保留几位小数,误差是多少。

5、一定要注意符合单调性才可以二分,不然就像去年青岛区域赛一样,好多人最终卡死在了二分,其实并不是二分。

6、用lower_bound的时候一定要注意是否序列是单增的。不然不能随便用!!!

7、一定要仔细读题,题目中的有些细节可能要在二分的时候特判,比如去年青岛区域赛的E。

你可能感兴趣的:(数据结构:二分查找,总结:训练日记)