CF1832D2 Red-Blue Operations (Hard Version) 题解
由 D1
的结论,将最后 个操作倒序加入原数组,然后每个数用偶数次操作,每两次操作 ,最后可能剩下一个操作,加到最大数上。
感性理解,由于要使得最后的操作是 ,那么前面一定是 排列的,那么每次 最优。
考虑二分答案。
考虑“最后 个操作倒序加入原数组”的操作,记 为 ,则 变为 。
记 的数有 个,如果 ,那么无解。
否则,用掉 次操作,剩下 次,设 ,则前 个数可消耗掉 次操作,那么剩下 次操作分给后面 个数。
如果 ,无解。
如果 为奇数,那么全部分给一个数,显然增加,必然有解。
如果 ,那么选择两个数分别操作奇数次,由上,必然有解。
否则,剩下偶数次操作,只能分给一个数,那么 必须减去 ,判断是否 即可。
时间复杂度 。
本文来自博客园,作者:蒟蒻orz,转载请注明原文链接:https://www.cnblogs.com/orzz/p/18121937