Problem : Judge Status : AcceptedRunId : 5991510 Language : C++ Author : Code Render Status : Rendered By HDOJ C++ Code Render Version 0.01 Beta
1 /*Dijstra*/ 2 #include3 #include 4 #include 5 using namespace std; 6 #define MAX 0x3f3f3f3f 7 #define max 202 8 int map[max][max],visited[max]; 9 10 int main()11 {12 int n,m,i,j,a,b,d;13 while(cin>>n>>m)14 {15 memset(map,MAX,sizeof(map));16 for(i=0;i >a>>b>>d;24 if(map[a][b]>d) map[a][b]=map[b][a]=d; /*注意可能会有多条路*/25 }26 cin>>a>>b;//s 和 t27 int min,u;28 visited[a]=1;29 for(i=0;i map[a][j])//j没有被访问,且和a之间的距离最短,记录为u35 {36 min=map[a][j];//min为a到j的距离37 u=j;38 }39 }40 visited[u]=1;//u被访问了41 for(j=0;j