@[The_cosmos](/user/526017) 为什么是 nlogn,看看 T
by yinhee @ 2024-05-15 22:50:32
@[yinhee](/user/578590)
```cpp
bitset<N> T(bitset<N> a, bitset<N> b) {
return b.any() ? T(a ^ b, (a & b) << 1) : a;
}
```
以前一直只会这种/kk
by The_cosmos @ 2024-05-15 22:57:14
@[The_cosmos](/user/526017) 这里似乎不能均摊(?
$\log n$ 是均摊来的。
by 喵仔牛奶 @ 2024-05-15 22:57:42
@[喵仔牛奶](/user/560516) 为什么不能均摊啊
by The_cosmos @ 2024-05-15 22:58:19
而且似乎没有 $n/w$ 的 bitset 加法吧。
by 喵仔牛奶 @ 2024-05-15 22:58:39
@[喵仔牛奶](/user/560516) 讲道理好像是有一些很抽象的做法可以实现的我记得
by The_cosmos @ 2024-05-15 22:59:11
@[The_cosmos](/user/526017) 一个 $f_i$ 贡献两次,好像不能均摊(?
我也不清楚。
by 喵仔牛奶 @ 2024-05-15 23:00:11
@[喵仔牛奶](/user/560516) 这个换来的就是常数大一倍吧?。
by The_cosmos @ 2024-05-15 23:00:47
@[The_cosmos](/user/526017) 均摊是指每次加法 1 的总是至少减少 1,$f_i$ 两次贡献的话 1 的总数就会增加,所以不能均摊。
by 喵仔牛奶 @ 2024-05-15 23:03:45
但是能不能构造出来这种我也不确定 /kk
by 喵仔牛奶 @ 2024-05-15 23:05:42