题解 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}\) 且其它猫粮都匹配完成时显然有解。
考场代码没了,什么时候补代码看命随缘。
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 微软正式发布.NET 10 Preview 1:开启下一代开发框架新篇章
· 没有源码,如何修改代码逻辑?
· PowerShell开发游戏 · 打蜜蜂
· 在鹅厂做java开发是什么体验
· WPF到Web的无缝过渡:英雄联盟客户端的OpenSilver迁移实战