CF1152F1 Neko Rules the Catniverse 的题解
按照一般得思路,我们应该记录那些元素被选择了。可是 太大了,考虑转化一下。
很小只有 ,这启发我们从 开始到 一个一个考虑,思考一下填入需要满足什么要求:
具体的,我们考虑在一个序列中插入一些数,使这个序列一直满足题目的要求。
首先第 个要求是肯定满足得,因为我们就是在枚举要填入什么元素,所以肯定不会出现填入的数大于 或者有重复的情况。
因为插入的顺序是递增的,所以一定有 ,也就一定满足 。
所以新填入的数与后面的关系一定是满足题目要求的,只需要考虑与前面的关系就行了。
注意这里有一个细节就是第 个位置可以随便填,因为它根本就没有前面的元素。
考虑会影响填入 的有什么,显然 只有插入到 这些数后面才行,那么暴力的考虑,直接状压记录这 个位置都填的什么。
在考虑了上面之后,状态就很好想出来了。
设 表示现在考虑到了填 ,已经填了 个数, 这个区间内都用了 的数,那么有转移方程:
这样的时间复杂度为 的。