思路:用dijkstra演算法 每次以最短的路徑為出發點 找下乙個點 如果路徑相同 就比較救援隊數目
關於dijkstra可以參考
#include
#include
using namespace std;
int n,m,s,d;
int map[501][501],num[501],path[501],len[501],jy[501],sum[501];
bool vis[501];
//map[i][j]表示i到j的距離,nun[i]表示i點有的救援人數, path[i]表示到i點的前乙個點
//len[i]表示起點到i點的最短路徑長度,jy[i]表示起點到i的最多救援人數,sum[i]表示起點到i點的最短路徑的條數
void dij(int start, int end)}}
}int min = 999999;
for(int j=0;j=0;i--)
len[s] = 0;
jy[s] = num[s] ;
int v1,v2,l;
for(int i=0;i>v1>>v2>>l;
map[v1][v2] = l;
map[v2][v1] = l;
}dij(s, d);
}
PAT L2 001 緊急救援
時間限制 200 ms 記憶體限制 65536 kb 長度限制 8000 b 判題程式 standard 作者 陳越 作為乙個城市的應急救援隊伍的負責人,你有一張特殊的全國地圖。在地圖上顯示有多個分散的城市和一些連線城市的快速道路。每個城市的救援隊數量和每一條連線兩個城市的快速道路長度都標在地圖上。...
pat L2 001 緊急救援(djstra過)
作為乙個城市的應急救援隊伍的負責人,你有一張特殊的全國地圖。在地圖上顯示有多個分散的城市和一些連線城市的快速道路。每個城市的救援隊數量和每一條連線兩個城市的快速道路長度都標在地圖上。當其他城市有緊急求助 給你的時候,你的任務是帶領你的救援隊盡快趕往事發地,同時,一路上召集盡可能多的救援隊。輸入格式 ...
PAT L2 001 緊急救援 最短路徑變形
題目鏈結 題目意思 給出你四個整數n,m,s,d,分別表示有n個城市,城市標號從0 n 1 連線m條路。接下來給你n個數代表第幾個城市有多少救援隊,接下來的m行給出你三個數a b,l 分別代表從城市a到城市b距離l。現在要你輸出總共有幾條最短路徑且最短路徑上的最多的救援隊的數量,並且輸出擁有最多的救...