A - Til the Cows Come Home

这是一道最短路的模板的,很裸的模板题可惜我还是没能1A,是因为我不知道dijkstra需要判断重复的边,dijkstra是利用邻接矩阵存的值,如果有两条相同的边重复输入且边的权值不同,那么如果靠后的那条边权值比前面的那条大,这个同一条边的较大的值会覆盖之前那个较小的值,那么我们求出的最终路径就不是最短路径;

下面贴代码:

#include
#include
#include
#include
#include
using namespace std;
int t,n;
const int inf = 1e8;
int map[1010][1010];
int dist[1010];
int s[1010];

void dijkstra(int v)
{
    for(int i =1;i<=n;i++)
    {
        dist[i] = map[v][i];
        s[i] = 0;
    } 
    s[v] = 1;dist[v] = 0;
    for(int i =0;i

你可能感兴趣的:(A - Til the Cows Come Home)