记GESP八级202409(AK祭
2024-09-13 17:43:56
发布于:上海
宣?
T1 证明已补。
Upd on 2024/9/13:估分无误,静待上榜。
直接看编程题。话不多说,上题面。
T1
本题为数学题,但是直接去推式子还是有一定难度的。
实际上可以瞪眼法先推一个“看起来比较正确”的式子。这个时候大概率会有问题,可以再用 dfs
打一张绝对正确的表(我用的是 的表)。随后看看式子和表有什么区别(比如多乘了 的几次方,少了一项组合数之类的。)
相信我这么写大家都不会同意的,所以补个场后证明。
首先一个显然的结论:当 时,无可行方案,因为 对手套至少需要选择 件手套才够。
排除这种情况,我们逐点考虑。首先在 对手套中选择完整 对的方案数为 。还剩下 件手套是可选的,而这些手套可以从剩下的 对手套中选择。左右手比较难办,我们暂时设剩下这些手套都只有左手,那么方案数就要再乘上 件手套中选 件手套的方案数,也就是 。然后补上每一件手套都有左右手两种可能,就是再乘 。
最后放出结论,答案为:
组合数和 的幂用递推公式预处理即可,数据范围再大组合数可以用模意义下的乘法逆元或者 Lucas 定理处理。时空复杂度 。
T2
显然本题为树形 dp。按照树形 dp 的套路,我们令根为 , 为以 为根的子树中的最长美丽路径长度, 为以 为根的子树且路径的一端为 的最长美丽路径长度,则答案为 。容易得到转移方程:
其中 分别为异色儿子 中 的(非严格)最大、次大值。
翻译:若节点 为叶子节点,则 ;否则 为其所有异色子节点 中最大的 , 为其所有子节点 中最大的 ,再与其所有异色子节点 中 的(非严格)最大、次大值之和加一取最大值。
用 dfs 转移,时间复杂度 。
后记
估分 以上嘿嘿。
看了官网答案,vocal,I AK GESP 8级!!!
全部评论 8
顶
2024-09-13 来自 浙江
1I AK GESP!顶
2024-09-13 来自 上海
1%%%,我T1不会逆元丢了10分
2024-09-09 来自 广东
1递推预处理就行了罢()
2024-09-09 来自 上海
1wc我傻了,把杨辉三角忘了
2024-09-10 来自 广东
0你叫王乾辰?
2024-10-08 来自 安徽
0
贺白银!
2024-09-09 来自 江苏
1谢谢!!
2024-09-09 来自 上海
0
%%大佬
2024-09-09 来自 江苏
1不,我很蒻的啦
2024-09-09 来自 上海
0
顶
2024-09-14 来自 上海
0顶
2024-09-08 来自 上海
0目测 AK,顶
2024-09-08 来自 上海
0
有帮助,赞一个