解决方案:空间开两倍。
我原来答案获取是这样写的:
LL f(int x) { if (x > n) return 1; return C(siz[x]-1, siz[lson(x)]) * f(lson(x) % MOD * f(rson(x)) % MOD; }
问题在于不是每个 x 都有一个小于等于 nnn 的 lson(x),然后就 SPFA 了。
x
lson(x)