2025-08-02 模拟赛总结 😰
预期:\(100+100+20+20=240\)。
实际:\(70+100+20+20=210\)。
排名:\(rk98/166\)。
比赛链接:http://oj.daimayuan.top/contest/369。
A - 器材整理:
题意:
一共有 \(n\) 个物品,每个物品的体积为 \(v_i\),你最多可以用 \(k\) 个体积相同的盒子来装物品。
打包策略:每次找到不超过盒子剩余体积中体积最大的物品,然后将其装入盒子。如果没有,那么换一个盒子。
你需要求出盒子的最小体积。
思路:
首先你可以 \(O(n\log n)\) 模拟对盒子的体积 \(w\) 进行 check,但是这并不满足单调性,不能二分。
最暴力的做法是枚举 \(0\sim sum\) 作为盒子的体积进行 check,时间复杂度:\(O(Tn^2V)\)。
(乱搞)其实你可以照常二分,然后找出二分周围的(大概 500)点进行 check,然后就可以过了。
代码:
反思:
本来可以过的,但是二分后暴力找的范围我写大了,以后要好好算时间复杂度

浙公网安备 33010602011771号