题目1162:I Wanna Go Home
来源:互联网 发布:数据分析常用方法 编辑:程序博客网 时间:2024/05/19 15:21
#include "iostream"#include "stdio.h"#include <vector>#include <cstring>#include <algorithm>#include <string>#include <string.h>#include <stack>#include <queue>#include <ctype.h>#include <functional>#include <math.h>using namespace std;//1162const int INF=0x7fffffff; struct E{ int nt,d;};vector<E> v[610];bool mk[610];int ds[610];int flag[610];E tmp;int n,m,a,b,c,np;int main(){ //freopen("input.txt","r",stdin); while(cin>>n>>m && n!=0){ for(int i=1;i<=n;i++){ v[i].clear(); mk[i]=false; ds[i]=-1; } while(m--){ cin>>a>>b>>c; tmp.d=c; tmp.nt=b; v[a].push_back(tmp); tmp.nt=a; v[b].push_back(tmp); } for(int i=1;i<=n;i++){ cin>>flag[i]; } ds[1]=0; mk[1]=true; np=1; for(int i=0;i<n;i++){ //dijkstra 循环n-1次 for(int j=0;j<v[np].size();j++){ int t=v[np][j].nt; int c=v[np][j].d; if(mk[t]) continue; if(flag[np]==2 && flag[t]==1) continue; //不从阵营2到阵营1 if(ds[t]==-1 || ds[np]+c<ds[t] ) ds[t]=ds[np]+c; } int mi=INF; for(int j=1;j<=n;j++){ if(mk[j]||ds[j]==-1) continue; if(ds[j]<mi){ mi=ds[j]; np=j; } } mk[np]=true; } cout<<ds[2]<<endl; } return 0;}/************************************************************** Problem: 1162 User: cust123 Language: C++ Result: Accepted Time:20 ms Memory:1672 kb****************************************************************/
0 0
- 题目1162:I Wanna Go Home
- 题目1162:I Wanna Go Home
- 题目1162:I Wanna Go Home
- Jobdu 题目1162:I Wanna Go Home
- 题目1162:I Wanna Go Home
- 题目1162:I Wanna Go Home
- 题目1162:I Wanna Go Home:标准单源最短路
- 九度OJ 题目1162:I Wanna Go Home
- 九度 oj 题目1162:I Wanna Go Home
- 九度 题目1162:I Wanna Go Home
- I wanna go home
- POJ3767----I Wanna Go Home
- 九度OJ 1162 I Wanna Go Home
- 九度:1162<I wanna go home><最短路径>
- 九度 OJ 1162 I Wanna Go Home
- 九度OJ-1162:I Wanna Go Home
- POJ 3767 I Wanna Go Home
- poj_3767——I Wanna Go Home
- vue组件——slot分发内容
- VC6.0 突然打不开dsw 工程文件的解决方案
- 实现将网页链接分享到微信功能
- Android中xml tools属性详解
- 简单日志方法
- 题目1162:I Wanna Go Home
- 扩容数据盘(Linux)
- 嵌入式Linux开发环境搭建
- MYSQL 常用命令
- Linux进程管理器
- AES加密解密工具类
- webpack与browser-sync热更新原理深度讲解
- SpringMVC教程--Validation校验
- win10 不安装oracle plsql连接远程oracle