卡常 Tips
查看原帖
卡常 Tips
356003
Moeebius楼主2024/7/5 15:15

一部分技巧同时优化了复杂度。

  1. 字符集仅为 99,请不要在 SAM 中开大小为 2626 的 nxt 数组。
  2. 矩阵乘法要写压位的 O(k2)O(k^2) 版本。为了获得更小的常数,请将 if 判断换成位运算筛选以去除分支。
  3. 写 zkw 线段树。
  4. (优化效果最显著)注意到线段树上单点修改的是一段区间,而本题中 pushup 代价很大,所以我们将一次询问中需要修改的位置先都找出来,然后逐层修改。这样可以避免一个点被 pushup 好几次。
  5. 使用快读快写。

经过笔者的测试,使用上述所有技巧后,最慢点用时仅为 1.85s。

2024/7/5 15:15
加载中...