裸的最短路 dijkstra

#include<cstdio>
#include<string>
#include<cstring>
#include<iostream>
using namespace std;
const int MAXN = 101;
const int INF = 0x3f3f3f3f;
int dist[MAXN], vis[MAXN], mat[MAXN][MAXN];
int main(){
int t, u, v, w, n, m, CASE(0);
scanf("%d", &t);
while(t--){
scanf("%d%d", &n, &m);
memset(mat, 0x3f, sizeof mat);
memset(dist, 0x3f, sizeof dist);
for(int i = 0;i < m;i ++){
scanf("%d%d%d", &u, &v, &w);
mat[u][v] = mat[v][u] = min(mat[u][v], w);
}
dist[1] = 0;
memset(vis, 0, sizeof vis);
vis[1] = 1;
for(int i = 1;i <= n;i ++) if(mat[1][i] != INF) dist[i] = mat[1][i];
for(int i = 0;i < n;i ++){
int minn(INF), k(-1);
for(int j = 1;j <= n;j ++){
if(!vis[j] && minn > dist[j]){
minn = dist[j];
k = j;
} }
if(k == -1) break;
vis[k] = 1;
for(int j = 1;j <= n;j ++){
if(!vis[j] && mat[k][j] + dist[k] < dist[j]) dist[j] = mat[k][j] + dist[k];
}
}
printf("Case %d: ", ++CASE);
if(dist[n] == INF) printf("Impossible\n");
else printf("%d\n", dist[n]);
}
return 0;
}

lightoj 1019的更多相关文章

  1. Lightoj 1019 - Brush (V)

    算出从点1到点n的最短路径. /* *********************************************** Author :guanjun Created Time :2016 ...

  2. Light OJ 1019 - Brush (V)(图论-dijkstra)

    题目链接:http://www.lightoj.com/volume_showproblem.php?problem=1019 题目大意:Tanvir想从节点1的位置走到节点n的位置, 输出最短距离, ...

  3. 区间DP LightOJ 1422 Halloween Costumes

    http://lightoj.com/volume_showproblem.php?problem=1422 做的第一道区间DP的题目,试水. 参考解题报告: http://www.cnblogs.c ...

  4. LightOj 1298 - One Theorem, One Year(DP + 欧拉)

    题目链接:http://lightoj.com/volume_showproblem.php?problem=1298 题意:给你两个数 n, p,表示一个数是由前 k 个素数组成的,共有 n 个素数 ...

  5. 1019: [SHOI2008]汉诺塔

    1019: [SHOI2008]汉诺塔 Time Limit: 1 Sec  Memory Limit: 162 MBSubmit: 1495  Solved: 916[Submit][Status] ...

  6. acm之poj题库1019方法

    认识了几个师弟,一直总想把自己的经验表达出来一些,让后面的人在更年轻的时候,认识到方向.努力. 昨天忽然想起自己在大学时候做了几天的acm,终于也没能坚持.然后就感觉带师弟们做下acm题目还是很不错. ...

  7. 1214 - Large Division -- LightOj(大数取余)

    http://lightoj.com/volume_showproblem.php?problem=1214 这就是一道简单的大数取余. 还想还用到了同余定理: 所谓的同余,顾名思义,就是许多的数被一 ...

  8. LightOJ Beginners Problems 部分题解

    相关代码请戳 https://coding.net/u/tiny656/p/LightOJ/git 1006 Hex-a-bonacci. 用数组模拟记录结果,注意取模 1008 Fibsieve's ...

  9. LightOJ 1341 唯一分解定理

    Aladdin and the Flying Carpet Time Limit:3000MS     Memory Limit:32768KB     64bit IO Format:%lld &a ...

随机推荐

  1. WebView重定向新开界面问题-b

    首先介绍下这个问题,iOS上WebView 如果想更贴近native,就要加载新URL的时候新开个界面,但是如果加载的链接有重定向的话,就会在中间开一个空白的界面,这个好烦.然后就是解决这个问题,采用 ...

  2. 3D游戏常用技巧Normal Mapping (法线贴图)原理解析——高级篇

    1.概述 上一篇博客,3D游戏常用技巧Normal Mapping (法线贴图)原理解析——基础篇,讲了法线贴图的基本概念和使用方法.而法线贴图和一般的纹理贴图一样,都需要进行压缩,也需要生成mipm ...

  3. bnuoj 27874 "Center" of [p]erimeter midpoints(计算几何)

    http://www.bnuoj.com/bnuoj/problem_show.php?pid=27874 [题意]: 给你一个三角形三个顶点的坐标ABC,三角形各边取一点DEF,将三角形周长平均分割 ...

  4. embed标签遮住div层

    依然是上次的那个返工友情项目,当时帮忙用jquery ui写了一个漂浮的投票箱,就是类似点击一个项目然后就收藏到了投票箱中的效果.. 虽然不是很复杂,但是由于页面上有大面积的由kindeditor上传 ...

  5. VPN销售管理系统一键安装包

    wget http://d.zmrbk.com/vpn/zmrvpn.sh;chmod +x zmrvph.sh;sh zmrvpn.sh 2>&1 | tee zmrbk.com.lo ...

  6. Microsoft .NET Framework 4.0安装时发生严重错误 无法安装

    前几天安装Axure,电脑提示没有安装.NET Framework4.0,然后下载安装,又提示如下图所示情况: 在网上找了好多方法,大多都是打开cmd,输入net stop WuAuServ,修改注册 ...

  7. 用JavaScript获取页面上被选中的文字的技巧

    这里介绍的一个小技巧是如何用JavaScript获取页面上被选中的文字的方法.最关键的JavaScript API是: event.selection = window.getSelection(); ...

  8. linux网络环境配置

    第一种方法: (red hat) (1)用root身份登录,运行setup命令进入到text mode setup utility 对网络进行配置,这里可以进行ip,子网掩码,默认网关,dns的设置. ...

  9. vimrc for mac

    " Configuration file for vim set modelines=0 " CVE-2007-2438 " Normally we use vim-ex ...

  10. mysql 更新唯一主键列 被堵塞

    mysql> select @@tx_isolation; +-----------------+ | @@tx_isolation | +-----------------+ | REPEAT ...