1.题目

传送门:Tree Tag - 洛谷
2.思路
我们考虑什么情况下Alice可以获胜.
如果 ≤ da,则Alice可以一步就追上Bob.
如果Alice处在一个能覆盖整棵树的点,即2da + 1≥树的直径,那么Bob也无论走到哪里Alice都能追到,Alice获胜.
其它情况下,Alice会一步一步逼近Bob,并一定能把Bob逼近某棵子树.
如果当前Alice占据一个点,使Bob无论怎么走都还在Alice的控制范围内,那么Alice必胜.
此时条件即为2da≥db.
最后一种情况有些同学可能没听懂,我来举个栗子

那么此时如果 是Bob走,并且满足2da≥db的话
如果Bob继续往下走,Alice肯定能继续追(其实Bob只能往下走,不然一步就会被追上),而当Bob走到一个子节点,没办法往下走的时候,那么他就必输
除以上条件外,Bob获胜,因为他可以再Alice靠近他的时候不断反向跳走.
总结一下:
只有三种情况 Alice 赢

文章讲述了在TreeTag竞赛中的一个追击问题,分析了Alice如何在不同情况下战胜Bob,包括距离限制、占据关键节点和树的直径。给出了Python代码实现和取胜条件总结。
最低0.47元/天 解锁文章
1281

被折叠的 条评论
为什么被折叠?



