P10929 黑暗城堡

题目描述

在顺利攻破 Lord lsp 的防线之后,lqr 一行人来到了 Lord lsp 的城堡下方。 Lord lsp 黑化之后虽然拥有了强大的超能力,能够用意念力制造建筑物,但是智商水平却没怎么增加。 现在 lqr 已经搞清楚黑暗城堡有 $N$ 个房间,$M$ 条可以制造的双向通道,以及每条通道的长度。 lqr 深知 Lord lsp 的想法,为了避免每次都要琢磨两个房间之间的最短路径,Lord lsp 一定会把城堡修建成树形的。 但是,为了尽量提高自己的移动效率,Lord lsp 一定会使得城堡满足下面的条件: 设 $D[i]$ 为如果所有的通道都被修建,第 $i$ 号房间与第 $1$ 号房间的最短路径长度;而 $S[i]$ 为实际修建的树形城堡中第 $i$ 号房间与第 $1$ 号房间的路径长度;要求对于所有整数 $i$,有 $S[i]=D[i]$ 成立。 为了打败 Lord lsp,lqr 想知道有多少种不同的城堡修建方案。 保证至少存在一种可行的城堡修建方案。 你需要输出答案对 $2^{31}–1$ 取模之后的结果。

输入格式

第一行有两个整数 $N$ 和 $M$。 之后 $M$ 行,每行三个整数 $X,Y$ 和 $L$,表示可以修建 $X$ 和 $Y$ 之间的一条长度为 $L$ 的通道。

输出格式

一个整数,表示答案对 $2^{31}–1$ 取模之后的结果。

说明/提示

数据保证,$2 \le N \le 1000$,$N-1 \le M \le N(N-1)/2$,$1 \le L \le 100$。