CF1239E Turtle
比较牛的结论题。
首先发现最小的两个数一定安排在起点和终点。
考虑对剩下 \(2n - 2\) 个数进行分配,我们不妨先思考一个简单的问题,如果只有行内可以重排如何排列才是最优的。
答案是第一行从小到大排序,第二行从大到小排序,感受一下不难发现这样最优。
根据邻项交换理论你会神奇的发现,此时要么一开始就下去,要么最后才下去。
于是你的问题变成了将剩下 \(2n - 2\) 个数分配分成两半,使得较大的那边尽可能小,使用 bitset 优化背包的技巧即可。
比较牛的结论题。
首先发现最小的两个数一定安排在起点和终点。
考虑对剩下 \(2n - 2\) 个数进行分配,我们不妨先思考一个简单的问题,如果只有行内可以重排如何排列才是最优的。
答案是第一行从小到大排序,第二行从大到小排序,感受一下不难发现这样最优。
根据邻项交换理论你会神奇的发现,此时要么一开始就下去,要么最后才下去。
于是你的问题变成了将剩下 \(2n - 2\) 个数分配分成两半,使得较大的那边尽可能小,使用 bitset 优化背包的技巧即可。