为什么会入狱?因为贪太多会被抓。\(\colorbox{white}{\color{white}{会被拉清单}}\)
\(\colorbox{white}{\color{white}{只要再会反悔就行了。}}\)
主要写点方式方法然后记点题目。
参考资料
贪心还能这么玩?——浅谈进阶贪心
邻项交换法
比较基础的方法,主要就是证明一个状态是最优或是最劣,通过交换两项然后比较交换前后方案的优劣,构造与答案有关的不等式,最终推到全局该如何选取方案。
国王游戏
经典题目,主要写写证明,我认为高精度是不好的,所以六十分就收手。
令前面所有 \(a\) 的乘积为 \(val\),其中某相邻两项为 \(A,B\),二元组分别为 \((a_1,b_1),(a_2,b_2)\)。
则 \(A\) 在前面时,答案 \(ans_1=\max(\frac{val}{b_1},\frac{a_1val}{b_2})\)
\(B\) 在前面时,答案 \(ans_2=\max(\frac{val}{b_2},\frac{a_2val}{b_1})\)
首先显然有 \(\frac{a_2val}{b_1}>\frac{val}{b_1}\) 和 \(\frac{a_2val}{b_2}>\frac{val}{b_1}\)。
首先给出结论:\(ans_1<ans_2\) 的充要条件为 \(a_1b_1<a_2b_2\)。
可以先自己证一下。
证明
大力分讨。
-
当 \(ans_1=\frac{val}{b_1},ans_2=\frac{val}{b_2}\) 时:
则 \(\frac{a_1val}{b_2}<\frac{val}{b_1}<\frac{val}{b_2}\),与前面条件相悖,此情况不成立。
-
当 \(ans_1=\frac{a_1val}{b_2},ans_2=\frac{val}{b_2}\) 时:
同 1.,显然此情况不成立。
-
当 \(ans_1=\frac{val}{b_1},ans_2=\frac{a_2val}{b_1}\) 时:
有 \(\frac{a_1val}{b_2}<\frac{val}{b_1}<\frac{a_2val}{b_1}\),则变形可得,\(a_1b_1<a_2b_2\)。
-
当 \(ans_1=\frac{a_1val}{b_2},ans_2=\frac{a_2val}{b_1}\) 时:
同 3. 显然 \(a_1b_1<a_2b_2\) 成立。
结论已经明晰,那么想要答案最小化,就将所有二元组按照 \(ab\) 大小从小到大排序即可。
【施工中。。。】