TouchStone
  请登录后使用
登录 注册
 系统首页  练习题库  考试列表  判题结果  问题讨论与解答  统计信息与排名
  • 首页
  • 题库
  • P3848
  • 题目
  • P3848打望
    限制 : 时间限制 : - MS   空间限制 : 165536 KB
    评测说明 : 1000ms
    问题描述

    Mr_he 是一个求变的人,所以每天从学校机房回到家都要走不同的路径,当然劳累一天然后漫步 在新鲜的大路上,打望过往行人和车辆也是一件非常惬意的事。 那么现在已经知道,从 Mr_he 的学校到家有 n 个交叉路口,把他们从 1..n 编号,我们认为编 号为 1 的是学校,编号为 2 的为家,有 m 条双向大路把这些路口连接起来。 Mr_he 打算每天沿着一条不同的路径回家(如果两条路径有一条道路不同,那么我们认为这两条 路径是不同的),欣赏不同的风景。但他不想太晚回家,因此他不打算走“回头路”。换句话说,他只 沿着满足如下条件的道路(A,B)走:存在一条从 B 出发回家的路径比所有从 A 出发回家的路径都短。  那么你的任务是帮助 Mr_he 计算一共有多少条不同的回家路径。

    输入格式

    第一行为 n,m,交叉点的数目和道路的数目。
    以下 m 行每行 3 个整数:a,b,d(1≤a,b≤n,1≤d≤1000000),表示有一条连接 a 和 b 的双向道路,长度为 d。 

    输出格式

    输出路径条数。这个数可能很大,请输出 mod 20080814 的结果。 

    样例输入 1

    5 6 
    1 3 2 
    1 4 2 
    3 4 3 
    1 5 12 
    4 2 34 
    5 2 24 

    样例输出 1

    2

    样例输入 2

    6 11
    1 2 401
    1 4 138
    2 3 604
    2 4 698
    2 5 846
    3 4 117
    3 5 608
    3 6 161
    4 5 484
    4 6 461
    5 6 626

    样例输出 2

    1

    提示

    【数据范围】  
    20%的数据:1<n≤10
    50%的数据:1<n≤100
    100%的数据:1<n≤1000,n-1≤m≤260000