单源最短路径
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
Description
用Dijkstra算法求解v0到其他各点的距离
#include <iostream>
#include <cstdio>
using namespace std;
int dis[10][10],minDist[10];
bool visit[10];
const int Dis_MAX=1000000000;
int main()
{
int n,m;
for(int i=0;i<6;i++)
{
for(int j=0;j<6;j++)
if(i!=j) dis[i][j]=Dis_MAX;
else dis[i][j]=0;
}
dis[0][2]=10;
dis[0][5]=100;
dis[0][4]=30;
dis[1][2]=5;
dis[2][3]=50;
dis[3][5]=10;
dis[4][3]=20;
dis[4][5]=60;
int start=0,end;
cin>>end;
for(int i=0;i<=5;i++)
minDist[i]=_____(1)______;
//minDist[i]表示从起点到i的最短路径
visit[start]=true;//已确定最短路的结点集合P
minDist[start]=0;
for(int i=1;i<=5;i++)
{ //做5遍就能把未确定最短路的结点集合Q遍历空
int minn=Dis_MAX;
int k;
for(int j=1;j<=5;j++)
{//寻找Q中最近的结点
if(______(2)______)
{
minn=minDist[j];
k=j;
}
}
_______(3)_______;//加入P集合
for(int j=1;j<=5;j++)
{ //对k的所有边进行松弛
minDist[j]=________(4)_______;
}
}
if(______(5)_______)
printf("%d",minDist[end]);
else
printf("-1");
return 0;
}
Input Format
一个整数n,1<=n<=5Output Format
求出v0到第n个点的最短距离。如果不能到达,则输出-1560
Source
数据结构-图2023龙游暑假1期晚上第三次课0705
- 状态
- 已结束
- 规则
- ACM/ICPC
- 题目
- 14
- 开始于
- 2023-7-5 17:00
- 结束于
- 2023-7-6 21:00
- 持续时间
- 28 小时
- 主持人
- 参赛人数
- 10