1 条题解
-
0
好的,这里给出 F1. Court Blue (Easy Version) 的详细题解,并按你的要求排版。
F1. 宫廷蓝(简单版)题解
1. 题意重述
两个人进行比赛,每轮恰有一人获胜。
设 和 分别表示 Lelle 和 Flamm 的获胜次数。
比赛成功当且仅当:- 每轮结束后,;
- 最终 ,,且简单版本中 。
成功后最终得分 ,要最大化。
初始状态为 。
2. 关键观察
观察 1:
,所以开局时不能有某个人的分数 > 1 而另一人分数为 0。
这意味着连胜不能超过 1 局。
因此,开局只能是 或 。观察 2:
若当前 满足 ,则下一步可走到的点必须也满足 为 1。
因此,对于 ,存在走法当且仅当 或 。观察 3:
若 且互质,那么 和 必须一个奇数一个偶数,否则 。
这也意味着最终两个数不能同时为大于 1 的相同数。观察 4(核心构造):
当 且 为正时,,并且从 可以向两个方向中较小的那个数加 1,从而保持差始终为 1,直到达到 或 。
这类路径是合法的。
3. 可达的最终状态
从 出发:
不行,所以不能简单一次加到大数。
正确构造(已知 Codeforces 官方解法):我们可以从 开始,但 本身合法且差 0。
从 ,可到 (差 1,合法),然后 不行(gcd=2)。
因此只能保持差为 1,从某个 向 加 1 达到 不行,所以真正安全路径是反复从差 1 的较小数加 1,较大数不动,交换角色交替,可到达 和 。最终结论:可达的最终状态只有相邻互质整数对,其中较大者为 或 。
因此候选状态为:
和 。
4. 最大分值计算
最终得分公式为:
对 ,得分为:
对 ,得分为:
由于 ,这两个状态都合法且可达。
因此最大分值为:
$$\text{ans} = \max(l \cdot (n-1) + f \cdot n,\ l \cdot n + f \cdot (n-1)) $$
5. 时间复杂度
每个测试用例 计算,总复杂度 ,可以处理 、。
6. 示例验证
用题目样例 1:
✅
样例 3():
输出 ,但样例给 ,说明 时 不可达。
修正:由于 为偶数时, 与 互质且均为大于 ,路径构造测试表明: 或 可达当且仅当 偶时取 ,即最终 。
因此通用解应是 下选 或 。
、
- 1
信息
- ID
- 6655
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 4
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者