问题 1156 --黑暗城堡

1156: 黑暗城堡

时间限制: 1 Sec  内存限制: 128 MB
提交: 8  解决: 2
[提交][状态][讨论版][命题人:]

题目描述

你知道黑暗城堡有N个房间,M条可以制造的双向通道,以及每条通道的长度。

城堡是树形的并且满足下面的条件:

设D(i)为如果所有的通道都被修建,第i号房间与第1号房间的最短路径长度;

而S(i)为实际修建的树形城堡中第i号房间与第1号房间的路径长度;

要求对于所有整数i(1<=i<=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<=N<=1000,1<=M<=N*(N-1)/2,1<=l<=200

来源

[提交][状态]