90pts 倍增+滚动数组(?进食后人
查看原帖
90pts 倍增+滚动数组(?进食后人
994729
Epitome楼主2025/7/25 20:55

哈哈哈煮波的奇思妙想之滚动数组+倍增

如果你最后输出的是:

  for (int i = 1; i <= n; ++i) {
    cout << sa[0][w & 1][i] << " ";
  }

这个东西的 w 会为 logn+1\log n + 1,然后有可能你的 w 就没有计算完全,然后就坠机了,所以为了保证 sa[0] 计算完全会输出 w1w - 1,在滚动数组里就是:

  for (int i = 1; i <= n; ++i) {
    cout << sa[0][1 ^ (w & 1)][i] << " ";
  }

这有 9090 奇迹

2025/7/25 20:55
加载中...