你说的对,但是 \(mouseboy\) 在考场上沉迷原神打表,导致很多题没有想出正解
修改01序列
考场上,观察到提示第一给点 \(d=1\) 输出 \(0\) 骗得10分
考后仔细一想,既然要两个相邻 \(1\) 的距离为 &d& 倍数,易得
我们用a表示第一个点,b表示第二个点
得:
(a-b)%d==0
这不就是同余公式吗?
\(\therefore\) 非常简单
集合
考场上打表60
每个子集,取值范围是 \([1, \frac {n \times (n + 1)}{2}]\),枚举这个值,并枚举每一个 i 去计算选了 i 的可能性。使用 dp 求解,最后乘起来,华丽的结束
情景剧
考场上,暴力写挂了……
-
考虑枚举其中一个值或两个值,然后贪心让乘积最大
-
这道题我们选择枚举最小值,因为最大值随区间扩大是不降的,所以在枚举最小值的情况下,一定是选取枚举值为最小值的最大区间,这样就只有 \(n\) 个可能为答案的区间
-
区间最值,很明显,ST表(rmq)