2938: Another Tree

内存限制:32 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

给出一棵有N个节点(2 <= N <= 500000)N-1条边的树,每条边拥有一个长度L(1 <= L <= 500000)

定义:

(1)   path(u, v) = 顶点uv之间的最短路。

(2)   xor-distance(u, v) = epath(u,v)length(e), ⊕代表异或操作。

请计算出有多少对点的xor-distance的值等于K0 <= K <= 500000)。(v != u 并且 pair(u,v) = pair(v,u))。

输入

第一行是一个整数T,表示有T组测试数据。

接下来T组测试数据,每组测试数据开始为两个正整数NK,接下来N-1行每行包含三个整数u,v,L(0 <= u,v <= N-1),代表树中存在一条顶点为uv,边长为L的边。

输出

每组一行,输出点对的个数。

样例输入 复制

2
4 1
0 1 1
1 2 3
2 3 2
3 0
0 1 7
0 2 7

样例输出 复制

2
1