P2384 最短路

题目背景

狗哥做烂了最短路,突然机智的考了Bosh一道,没想到把Bosh考住了...你能帮Bosh解决吗?

他会给你100000000000000000000000000000000000%10金币w

题目描述

给定n个点的带权有向图,求从1到n的路径中边权之积最小的简单路径。

输入输出格式

输入格式:

第一行读入两个整数n,m,表示共n个点m条边。 接下来m行,每行三个正整数x,y,z,表示点x到点y有一条边权为z的边。

输出格式:

输出仅包括一行,记为所求路径的边权之积,由于答案可能很大,因此狗哥仁慈地让你输出它模9987的余数即可。

废话当然是一个数了w

//谢fyszzhouzj指正w

对于20%的数据,n<=10。

对于100%的数据,n<=1000,m<=1000000。边权不超过10000。

输入输出样例

输入样例#1: 复制

3 3
1 2 3
2 3 3
1 3 10
输出样例#1: 复制

9

说明

好好看一看再写哟w

spfa模板题

#include<queue>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define N 1000010
#define mod 9987
#define maxn 9999999
using namespace std;
queue<int>q;
bool vis[N];
int n,m,x,y,z,tot;
int f[N],to[N],dis[N],next[N],head[N];
int read()
{
    ,f=; char ch=getchar();
    ;ch=getchar();}
    +ch-',ch=getchar();
    return x*f;
}
int add(int x,int y,int z)
{
    tot++;
    to[tot]=y;
    dis[tot]=z;
    next[tot]=head[x];
    head[x]=tot;
}
int spfa(int s)
{
    ;i<=n;i++) f[i]=maxn,vis[i]=false;
    f[s]=,vis[s]=,q.push(s);
    while(!q.empty())
    {
        x=q.front(),q.pop();vis[x]=false;
        for(int i=head[x];i;i=next[i])
        {
            int t=to[i];
            if(f[t]>1ll*f[x]*dis[i]%mod)
            {
                f[t]=1ll*f[x]*dis[i]%mod;
                if(!vis[t])
                 q.push(t),vis[t]=true;
            }
        }
    }
}
int main()
{
    n=read(),m=read();
    ;i<=m;i++)
    {
        x=read(),y=read(),z=read();
        add(x,y,z);
    }
    spfa();
    printf("%d",f[n]);
    ;
}

最新文章

  1. 【翻译】Awesome R资源大全中文版来了,全球最火的R工具包一网打尽,超过300+工具,还在等什么?
  2. jquery dataTable汉化(插件形式)
  3. VS 母版使用配置技巧
  4. String to Integer (atoi)
  5. post数据
  6. mysql计划任务
  7. 转!论if else与switch的效率高低问题
  8. SQL加、查、改、删、函数
  9. 玩转变量、环境变量以及数学运算(shell)
  10. 利用 Composer 完善自己的 PHP 框架(一)——视图装载
  11. jsp链接数据库
  12. SpringMVC4+thymeleaf3的一个简单实例(篇三:页面参数获取)
  13. 使用C#连接ORACLE数据库
  14. jQuery渐隐渐出的文字提示
  15. c# foreach枚举器
  16. Java泛型的定义以及对于&lt;? extends T&gt;和&lt;? super T&gt;
  17. html中DIv并排显示问题
  18. 爬取西刺网的免费IP
  19. 关于MySQL insert into ... select 的锁情况
  20. python序列化与反序列化(json与pickle)

热门文章

  1. 【C++对象模型】第一章 关于对象
  2. 01-UIScrollView01-大图片展示
  3. 正则表达式实现将html文本转换为纯文本格式(将html字符串转换为纯文本方法)
  4. Python第三方库SnowNLP(Simplified Chinese Text Processing)快速入门与进阶
  5. libSVM笔记之(一)在matlab环境下安装配置libSVM
  6. Java基础 变量和数据类型及相关操作
  7. openfire在内网的情况下 文件传输代理的设置
  8. Python的web服务器
  9. python一步高级编程
  10. aspxgridview export导出数据,把true显示成‘是’