main
黄海 2 years ago
parent e3658a81bc
commit 643cda2413

@ -26,9 +26,12 @@ void dfs1(int u, int fa) {
int v = e[i];
if (v == fa) continue;
dfs1(v, u);
f[u] = f[u] * (f[v] + 1) % mod;
f[u] = f[u] * (f[v] + 1) % mod; // 全白也是一种方案对于v子树而言它并不是只能提供以v染成黑色的所有方案还有一种v没有染成黑色的方案数。
// 而此时由于v没有染成黑色所以v子树就没有进去染色也就是整个v子树全都是白色这算是一种特殊的染色方案也就是啥都不染。
// 所以 f[v]+1 就是v子树的所有贡献值,而f[u]需要把自己所有儿子的共献值累乘起来才是自己的贡献值。
son.push_back(v); // 将子节点加入集合,方便之后操作
}
int t1 = 1; // 前缀积取模后的值
int t2 = 1; // 后缀积取模后的值

Loading…
Cancel
Save