随便做做
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且不相同的数。那么一通处理就行。
那么对于这种题,一种方法是写个对拍调~,另一种就是写前想完怎么写。
感觉还是前者更适合我自己 😦

浙公网安备 33010602011771号