atcoder#AGC052F. [AGC052F] Tree Vertices XOR

[AGC052F] Tree Vertices XOR

题目描述

N N 頂点の木が与えられます。 木の頂点には 1 1 から N N までの番号が付けられており、i i 番目の辺は頂点 ui, vi u_i,\ v_i を結びます。

はじめ、木の各頂点には 1 1 という数が書かれています。

1 1 回の操作で、あなたは以下を行えます。

  • 木から頂点 v v を選ぶ。v v に隣接する頂点全てに書き込まれた値の XORX X であるとする。v v に書かれた値が av a_v であるとして、この値を (av XOR X) (a_v\ \mathrm{XOR}\ X) に置き換える。

この操作を任意の有限回(0 0 回も含む)行えるとして、得られる木の形態は何通りあるでしょうか。この数は大きい可能性があるため、これを 998244353 998244353 で割った余りを出力してください。

ここで、木の 2 2 つの形態は、書かれた数が異なるような頂点 v v が存在するときに異なるとみなされます。

输入格式

入力は以下の形式で標準入力から与えられる。

N N u1 u_1 v1 v_1 u2 u_2 v2 v_2 \vdots uN1 u_{N-1} vN1 v_{N-1}

输出格式

初期状態から得られる木の形態の個数を 998244353 998244353 で割った余りを出力せよ。

4
1 2
2 3
3 4
10
5
1 2
1 3
1 4
1 5
24
6
1 3
2 3
3 4
4 5
4 6
40
9
1 2
2 3
1 4
4 5
1 6
6 7
7 8
8 9
255

提示

制約

  • 3  N  2 105 3\ \le\ N\ \le\ 2\cdot\ 10^5
  • 1 ui, vi  N 1\le\ u_i,\ v_i\ \le\ N
  • ui  vi u_i\ \neq\ v_i
  • 入力が表すグラフは木である。

Sample Explanation 1

頂点 1,2,3,4 1,2,3,4 a,b,c,d a,b,c,d が書かれている形態を abcd abcd と表すと、到達可能な形態は 1111 1111 , 1110 1110 , 1100 1100 , 1000 1000 , 0111 0111 , 0110 0110 , 0100 0100 , 0011 0011 , 0010 0010 , 0001 0001 です。