[NOI2016]国王饮水记

 [NOI2016]国王饮水记 

.....无话可说

小于h1的直接扔掉

其他的从小到大排序

k>n的时候,手玩可以发现,每次选择2个合并最优

k<n?一段合并答案更优

DP,f[i][j]前i个,合并了j次最大值

可以推出斜率优化的式子,(这个有所不同!这玩意是分式,最优化斜率,交叉项才是最优化截距!)

也具有决策单调性,下凸壳队列维护

 

n<=700的时候,用高精度

n>700的时候直接long double拿40%

这样可以有91pts

 

然后开始 

 

法一:直接f[i][j]用long double存答案,记录转移的路径,最后高精度还原.....不知道为什么f精度可以支持比大小的时候不错.

法二:可以证明,分段>=2只有不超过14个,一定是前14个

 

无话可说....

 

斜率优化的分式形式不太常见

posted @ 2019-07-07 16:58  *Miracle*  阅读(193)  评论(0编辑  收藏  举报