专栏文章
1106联考题解
个人记录参与者 1已保存评论 0
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @mincyxej
- 此快照首次捕获于
- 2025/12/02 00:23 3 个月前
- 此快照最后确认于
- 2025/12/02 00:23 3 个月前
T1
This problem is from previous Codeforces rounds. link
T2
This problem is original. Credits to @Legendary_Noxus for crafting this problem. Hope everyone enjoy.
对于 的情况,我们可以使用 BFS 暴力求出答案,状态数为 。可以通过搜索证明答案 。
对于 的情况,我们维护包含 的值域连续段。设连续段的元素分别为 。
具体地,我们先找到 的位置,并使用 次操作将其移动到序列最前方。
接下来,我们重复以下操作:
-
如果当前包含 的连续段在序列的开头,我们找到 的位置,令其为 。操作 将会把当前连续段放在 的右边,使新的连续段成为 。并且,操作完成后,新的连续段在序列末尾。
-
如果当前包含 的连续段在序列的末尾,我们找到 的位置,令其为 。操作 将会把当前连续段放在 的左边,使新的连续段成为 。并且,操作完成后,新的连续段在序列开头。
我们重复该操作,直到连续段大小为 。此时我们可以把连续段看成一个整体,然后将原序列看成一个长度为 的序列,并使用 BFS 进行最后的求解。
显然,当 时, 在操作结束前恒成立,因此以上步骤是良定义的。
最开始可能会使用 次操作。连续段大小每操作一步都会增加 ,在连续段大小为 时会使用 次操作。最后长度为 的序列至多需要 次操作。总操作数至多为 。
T3
This problem is from previous Codeforces rounds. link
T4
This problem is from previous Codeforces rounds. link
相关推荐
评论
共 0 条评论,欢迎与作者交流。
正在加载评论...