感觉我永远出不来这种题。
怎么现在还没有题解,让我复活一下写一下这个祝我破顶的题吧!
我尽量讲清楚一点。
贪心。
怎么看出来的?观察数据范围,这玩意是非常非常大的,排除dp,而这种“最大值”的做法(准确来说是策略性)无非就几种:二分,dp,贪心。二分显然不对(你想,这个怎么 check?还是绕了个圈圈!),所以我们想到贪心。
观察每种糖果取多次的结果,发现总是(奇数+偶数)*若干次+奇数。形式化地,假设买 aaa 轮(一轮两个),那么他的答案只会是 (xi+yi)×a(x_i+y_i)\times a(xi +yi )×a 或者 (xi+yi)×a+xi(x_i+y_i)\times a+x_i(xi +yi )×a+xi 。
是不是正解要出来了?去花钱买大的 (xi+yi)(x_i+y_i)(xi +yi ),还不如去买最小的 (xj+yj)(x_j+y_j)(xj +yj )!这就是特殊性质 A 的做法!
于是我们得到下面策略(记 x+yx+yx+y 最小的那个地方是 kkk):
> 如果要买“2”,直接去 kkk 去买。买“1”的,去 xxx 较小的地方买。
具体地,有下列过程。
* 得到 kkk,将数组按照 xxx 从小到大排序。
* 然后,枚举前 iii 个糖果的“1”要买,剩下的钱都去买“2”,得到这些结果后取最大值。
代码:
后记:100+32+8+30,我的游记,省年排4。为啥这把都这么低啊,这个分不是很好打吗/yiw。