三分算法

来源:互联网 发布:国家省市区数据库 编辑:程序博客网 时间:2024/05/16 17:42

类似于二分,只不过三分应用于单峰函数。
设l,r,mid,mmid.
mid=l+(r-l+1)/3;mmid=l+(r-l+1)*2/3;
说白了mid,mmid是区间[l,r]的三等分点。
如果ans[mid]>ans[mmid],那么说明答案一定在mmid左侧。
同理,ans[mid] < ans[mmid]则答案在mid右侧。
这样就可以不断逼近峰值了。
典型题目:宅男计划,扔出题解。。但尴尬的是这道题没多少人证出是三分。。
后续待更

原创粉丝点击