题解 P11628 [WC2025] 猫粮
猫娘题喵喵喵!猫猫可爱!
Fe 选手唯一场切的题,只能说代码堵塞还是太保守了。
Solution
注意到以下两点:
-
\(\displaystyle \sum_{i=1}^n(a_i+b_i)=nm\),也就是说不可能出现浪费,否则就喂不饱。
-
\(1 \le a_i, b_i \le m − 1\),即每只猫娘至少要吃两袋猫粮,进而得到每只猫娘都会吃恰好两袋猫粮。
那么就有了一个比较简单的方案构造方法,每次拿出一袋优质猫粮,不管哪只猫娘吃了再用一袋普通的喂饱她即可。
因为特别好实现,我赛时甚至写好交了一发 selfEval,得到了 \(15\) 分的好成绩!
还有一种情况(实际上是两种),考虑最后四袋未喂的猫粮和剩下的两只猫娘,可能的一种方案是用两袋普通猫粮喂饱其中一只,再用最后两袋优质猫粮喂饱最后一只猫,此时需要特判。
那么还有其它情况吗?上面的特殊情况启示我们,可以考虑所有普通猫粮都使用完的情况,若此时剩余的优质猫粮都为 \(\frac{m}{2}\) 且其它猫粮都匹配完成时显然有解。
考场代码没了,什么时候补代码看命随缘。

浙公网安备 33010602011771号