专栏文章

题解:CF2152E Monotone Subsequence

CF2152E题解参与者 1已保存评论 0

文章操作

快速查看文章及其快照的属性,并进行相关操作。

当前评论
0 条
当前快照
1 份
快照标识符
@minp8j9v
此快照首次捕获于
2025/12/02 06:06
3 个月前
此快照最后确认于
2025/12/02 06:06
3 个月前
查看原文
先问一遍 1,2,,n1,2,\dots,n,如果结果大于等于 n+1n+1 就直接输出,否则把结果的那些下标删了继续问。最坏情况是问了 nn 次还没问出来,此时每次结果 n\le n,因此必然剩下至少一个位置没被删。
考虑这样一件事:令 fif_i 代表以位置 ii 结尾的最长降序子序列长度,那么在这问的 nn 遍中,若 ii 出现在第 jj 次问出来的结果中,则有 fi=jf_i=j。证明也是容易的,ii 前面那 fif_i 个数,每次询问会从左往右删一个,等删到自己的时候就是第 fif_i 次。
观察到了这一点后,只需取出最终那个没被删的位置 pospos,有 fposn+1f_{pos}\ge n+1,取出以 pospos 结尾的最长降序子序列即可。
submission:https://codeforces.com/contest/2152/submission/341787318

评论

0 条评论,欢迎与作者交流。

正在加载评论...