#arc045c. [arc045_c]エックスオア多橋君
[arc045_c]エックスオア多橋君
問題文
多橋君は橋が大好きです。したがって、全ての辺が橋(グラフ理論用語)となる木と呼ばれるグラフが大好きです。また、多橋君は最近学校でXORについて学びました。そこで、次のような問題について考えています。
頂点と 本の辺からなる連結な無向グラフ、つまり木が与えられます。各頂点は、それぞれ頂点 、頂点 、…、頂点 と呼ばれます。各辺にはそれぞれ非負整数のコストが割り振られています。
整数 が与えられるので、頂点 と頂点 を結ぶ単純パス(同じ辺を二度通らないパス、木においては必ず つだけ存在する)上の辺のコストの和が になるような組 ()の総数を求めてください。 ただし和とは、いくつかの整数 があったとき、それらの2進表現のビット毎の排他的論理和 により得られる値のことを表します。 例えば、 は です。
あなたの仕事は、多橋君の代わりにこの問題を解くことです。
入力
入力は以下の形式で標準入力から与えられる。
:
- 行目には、グラフの頂点数を表す整数 と問題文中の整数 が与えられる。
- 続く 行には、グラフの 本の辺の情報が与えられる。このうち 行目には、 番目の辺が結ぶ つの頂点 とコスト が与えられる。
- 与えられるグラフは連結であることが保証される。
出力
行目に問題文中で求められている答えを出力せよ。末尾に改行を入れること。
入力例1
6 7
1 2 5
2 3 3
3 4 6
2 5 2
5 6 7
出力例1
3
のとき、パス上の辺のコストの和が (進表記で) となるので答えは となる。
この入力例に対するグラフは下図のようになる。コストについては、その進表記と進表記を表示している。
入力例2
6 3
1 2 1
2 3 3
3 4 2
4 5 3
4 6 1
出力例2
4
入力例3
10 1
9 10 1
6 10 1
5 2 1
8 6 1
4 5 1
7 6 0
3 8 0
3 1 1
8 2 0
出力例3
25