随便做做

CF1188C:

发现每个序列值不超过 $\dfrac{\max(a[i])-\min(a[i])}{k-1} $。
这样值域变得很小,那么答案表示可以是目标序列数量乘值。发现排序后,差值单调递增,过程可优化为 \(O(nk)\),为了方便处理,用个差分统计答案,记状态数组 \(f[i][j]\)\(\ge lim\) 的序列数,不存在交集,直接减去 \(>lim\) 的答案即可。

CF185C:

设状态为 \(f[i][j][l][r]\) 为第 \((i,j)\) 格包含第 \(1\)\(l\sim r\) 格子中的所有数。然后直接转移。

CF552C:

首先题面理解稍稍出了一点问题 😦
实际上可转化为:

\[{0/1} \times w^{1}+...+{0/1} \times w^{k} \]

所以有一种维护方式,每次除以一个 \(w\) 那么对于每一位都可以转化为选或不选的状态。
使得当前 \(m\) 一定有加上 \({-1,0,1}\)\(\mod m\) 为0的结果。
所以直接对于每一位操作即可。

CF792C:

如果场上做,肯定寄,所以对于这种题,写代码时要先想想!
结论很好想,因为是3的倍数,所以可改为美丽数必有一个与其 \(\mod 3\) 相同的数或是两个 \(\mod 3\) 不为0且不相同的数。那么一通处理就行。
那么对于这种题,一种方法是写个对拍调~,另一种就是写前想完怎么写。
感觉还是前者更适合我自己 😦

posted @ 2022-10-21 20:40  awlgot  阅读(45)  评论(0)    收藏  举报