题目描述
你知道黑暗城堡有 $N$ 个房间,$M$ 条可以制造的双向通道,以及每条通道的长度。 城堡是树形的并且满足下面的条件: 设 $D_i$ 为如果所有的通道都被修建,第 $i$ 号房间与第 $1$ 号房间的最短路径长度; 而 $S_i$ 为实际修建的树形城堡中第 $i$ 号房间与第 $1$ 号房间的路径长度; 要求对于所有整数 $i$ ($1\le i\le N$),有 $S_i= D_i$ 成立。 你想知道有多少种不同的城堡修建方案。当然,你只需要输出答案对 $2^{31} -1$ 取模之后的结果就行了。
输入格式
第一行为两个由空格隔开的整数 $N, M$; 第二行到第 $M+1$ 行为 $3$ 个由空格隔开的整数 $x, y, l$:表示 $x$ 号房间与 $y$ 号房间之间的通道长度为 $l$。
输出格式
一个整数:不同的城堡修建方案数对 $2^{31} -1$ 取模之后的结果。
样例
样例输入
样例输入
4 6
1 2 1
1 3 2
1 4 3
2 3 1
2 4 2
3 4 1
样例输出
样例输出
6
样例说明
样例说明
一共有 $4$ 个房间,$6$ 条道路,其中 $1$ 号和 $2$ 号,$1$ 号和 $3$ 号,$1$ 号和 $4$ 号,$2$ 号和 $3$ 号,$2$ 号和 $4$ 号,$3$ 号和 $4$ 号房间之间的通道长度分别为 $1$,$2$,$3$,$1$,$2$,$1$。 而不同的城堡修建方案数对 $2^{31} -1$ 取模之后的结果为 $6$。
数据范围与提示
对于全部数据,$1\le N\le 1000$,$1\le M\le \frac{N(N-1)}{2}$,$1\le l\le 200$。