BZOJ 100x 做题记录
#1000. A+B Problem#
太难了,不会。
#1001. [BeiJing2006]狼抓兔子#
印象很深刻,接触对偶图的第一题,跳过。
#1002. [FJOI2007]轮状病毒#
可以看出,一个轮状病毒满足将外部的环断成若干段,每段向中心点连恰好一条边。
可以先考虑一条链的做法。设 为长度为 的链的答案,则满足 。
放到环上就是枚举一条链的位置后,乘以剩下的一段的长度。Code(注意高精度实现有误,因为数据水所以过了)
#1003. [ZJOI2006]物流运输#
注意到码头数量很小,所以用状态压缩 DP 出只经过某个集合中的点时的最短路径长度。然后再 DP 出每天选择每种路径的最小花费。Code
#1004. [HNOI2008]Cards#
复习一下 Burnside 引理。
是一些从 到 的映射组成的集合。当时我因为没有弄清映射的概念,在这道题上卡了很久。
有了这个公式题目就简单了。把每种洗牌法拆成不相交的循环置换,那么循环置换内的点颜色必须相同。所以答案只与每个循环置换的大小有关。用类似背包的东西,每次加入一个置换,就能统计出每一种洗牌法的方案数。不要忘记每个点都不动也算一种洗牌法。所以最终答案就是所有洗牌法的答案相加除以 。 Code
#1005. [HNOI2008]明明的烦恼#
直接用 prufer 序列做。一个点度数为 就得在序列中出现恰好 次。故答案为
其中 ,即度数没有确定的点占用的位置总数;,即度数没有确定的点的总数。
一个细节在于如何做除法。高精度除法是可以避免的。只需要把所有除数分解质因数,然后做乘法时尝试用所有质数去消除它再乘入答案即可。然而当时我忘记了很久以前写的 阶乘分解质因数技巧,而是集中分解,速度也很快。Code
#1006. [HNOI2008]神奇的国度#
关于 弦图 的科技题,挖个坑,有时间再来学。
#1007. [HNOI2008]水平可见直线#
猜测最上面的折线形状为一个凸包,用反证法不难(?)证明。于是用一个单调栈就水过去了。Code
#1008. [HNOI2008]越狱#
究极大水题。正难则反。Code
#1009. [HNOI2008]GT考试#
先考虑 时怎么做。设 表示有 个位置,其长为 的后缀中填上了不吉利数字的前缀的答案。
其中 表示不吉利数字是否存在长为 的 border。
然后矩阵加速。Code
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现