atcoder#ARC086C. [ARC086E] Smuggling Marbles
[ARC086E] Smuggling Marbles
题目描述
すぬけ君は 頂点の根付き木を持っています。 この木の頂点には から までの番号がついており、頂点 はこの木の根です。 頂点 の親は頂点 です。
すぬけ君はこの木の他に、空の箱とビー玉を使って遊んでいます。 この遊びはいくつかの頂点にビー玉をそれぞれ つ置いたのち、以下の手順で進行します。
- 頂点 にビー玉が置かれているならば、そのビー玉を箱に移す。
- 全てのビー玉を現在の頂点から親の頂点に(同時に)移す。
- つ以上のビー玉が置かれている頂点それぞれについて、その頂点に置かれているビー玉を全て取り除く。
- ビー玉が置かれている頂点が存在するならば手順 1 へ、そうでなければ遊びを終了する。
ビー玉の置き方は 通りあります。 これらそれぞれの場合について 遊びが終了したときに箱に入っているビー玉 の数を求め、その和を で求めてください。
输入格式
入力は以下の形式で標準入力から与えられる。
输出格式
答えを出力せよ。
题目大意
题目大意:
Sunke有一棵N + 1个点的树,其中0为根,每个点上有0或1个石子,Sunke会不停的进行如下操作直至整棵树没有石子:
把0上面的石子从树上拿走放入口袋;
把每个点上的石子移到其父亲上;
对于每个点,若其石子数≥ 2,则移除该点所有石子(不 放入口袋)。
求对于所有种放置石子的方案,最终Sunke口袋中石子数的和为多少,对1000000007取模。
1 ≤ N < 200000,有一部分数据满足1 ≤ N < 2000。
fromDOFY
2
0 0
8
5
0 1 1 0 4
96
31
0 1 0 2 4 0 4 1 6 4 3 9 7 3 7 2 15 6 12 10 12 16 5 3 20 1 25 20 23 24 23
730395550
提示
制約
部分点
- 点分のデータセットでは が成立する
Sample Explanation 1
頂点 と頂点 のどちらにもビー玉を置いたとき、手順 により頂点 に複数のビー玉が置かれてしまいます。このとき、これらのビー玉は取り除かれるため箱に移動されることはありません。
Sample Explanation 3
答えを で求めてください。