最短路徑 九度1008 Dijkstra

2021-07-27 14:35:43 字數 828 閱讀 7908

題目:

本題要求是要在最短路徑長度相同的情況下,選擇花費小的方案,但其實是沒有這樣的測試點的;九度還是有點弱哪!!

【糾結】:為什麼在選最小邊時不用考慮花費因素呢?

#include

#define maxsize 100000000

using

namespace

std;

int edges[1010][1010]; //邊長

int cost[1010][1010]; //表示花費

int visit[1010]; //表示是否已訪問

int dist[1010]; //表示當前已經找到的從v0到vi的最短路徑長度

int mincost[1010]; //表示最小花費

int main()

}for (int i = 0; i < m; i++)

scanf("%d%d", &s, &t);//輸入起點&終點

for (int i = 1; i <= n; i++)

visit[s] = 1;//加入起點

for (int k = 2; k <= n; k++) //if

}//for - i

visit[key] = 1;//加入出發點

for (int j = 1; j <= n; j++)

}}

printf("%d %d\n", dist[t], mincost[t]);

}//while

return

0;}

九度 1008 最短路徑問題

題目描述 給你n個點,m條無向邊,每條邊都有長度d和花費p,給你起點s終點t,要求輸出起點到終點的最短距離及其花費,如果最短距離有多條路線,則輸出花費最少的。輸入 輸入n,m,點的編號是1 n,然後是m行,每行4個數 a,b,d,p,表示a和b之間有一條邊,且其長度為d,花費為p。最後一行是兩個數 ...

九度OJ 題目1008 最短路徑問題

一題目描述 給你n個點,m條無向邊,每條邊都有長度d和花費p,給你起點s終點t,要求輸出起點到終點的最短距離及其花費,如果最短距離有多條路線,則輸出花費最少的。輸入 輸入n,m,點的編號是1 n,然後是m行,每行4個數 a,b,d,p,表示a和b之間有一條邊,且其長度為d,花費為p。最後一行是兩個數...

九度OJ 題目1008 最短路徑問題

題目描述 給你n個點,m條無向邊,每條邊都有長度d和花費p,給你起點s終點t,要求輸出起點到終點的最短距離及其花費,如果最短距離有多條路線,則輸出花費最少的。輸入 輸入n,m,點的編號是1 n,然後是m行,每行4個數 a,b,d,p,表示a和b之間有一條邊,且其長度為d,花費為p。最後一行是兩個數 ...