![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
搜索
Lucius-THU
If you miss the train I'm on
展开
-
BZOJ 1082, 栅栏
二分+搜索。 二分可能得到的符合条件的木板数,再搜索验证。 爆搜的姿势很要紧,写一个美观一点的搜索不仅复杂度小而且方便剪枝…… 搜索时优先匹配较小的木板,显然若较小木板都无法满足则较大木板也无法满足。剪枝一:排序并删除小于最小木板的木材和大于最大木材的木板。 剪枝二:搜索时记录当前已浪费的木材量,当浪费值加需求量已大于木材总量时退出。原创 2016-10-23 21:04:22 · 223 阅读 · 0 评论 -
BZOJ 1016, 最小生成树计数
给定一张简单无向加权图,求其最小生成树方案数。貌似有一个Matrix Tree定理……但是感觉目前不是很学得进东西,所以还是打了dfs。 先跑一遍Kruskal,统计不同权值的边各出现几次。 然后dfs判断某一种权值的边的方案数,累乘即可。 需要注意的是并查集不可以路径压缩,那样会导致连通块合并后无法分开。原创 2017-02-08 09:40:30 · 382 阅读 · 0 评论 -
BZOJ 1024, 生日快乐
根据特定切割方法将一块蛋糕分成面积相等的若干块小蛋糕,求可行切割方案中小蛋糕长边比短边的最大值的最小值。Analysis数据范围很小,甚至不必二分直接搜索即可通过。 注意到对于某一块蛋糕,可行的切割方案数是有限的(具体见代码实现),所以状态数也挺少的……原创 2017-02-15 20:10:31 · 241 阅读 · 0 评论