給定n個點和m條邊,每條邊有一定的權值,求找出一條路徑,使得這條路徑上的每一條邊的權值的最大值最小。
用鄰接表儲存邊,用廣度優先搜尋遍歷整棵樹,得到答案。整體操作類似最短路,只不過中間需要更改。這個東西的思路還有點類似dp,但是我怎麼寫也寫不出來。
#include #include #include #include #include #include using namespace std;
struct edgeedge[10099];
int n,m;
int s,t;
int cnt = 0;
int head[10099];
int vis[10099];
int ans[10099];
int ans1[10099];
void add_edge(int x,int y,int z)
queueq;
int main()
q.push(s);
vis[s] = 1;
ans[s] = 0;
ans[s] = 0;
cout << s << ' ';
int anss = 10099;
while(!q.empty())
}cout << endl;
cout << endl;
for(int i = 1;i <= n;i++)
// int ans = 100000;
// for(int i = head[t];i;i = edge[i].nxt)
// cout << ans << endl;
cout << ans[t] << endl;
cout << anss << endl;
return 0;
}
P1396 營救 題解
題目傳送門 這題有好幾種方法可以做,有跑最短路的,有些最小生成樹的。這裡介紹最短路的方法。單源最短路徑,很自然地想到 dijkstra。不過題目要求的是最大值最小,所以鬆弛就要改成 if dis v max dis u e i w dis v max dis u e i w include usin...
洛谷 P1396 營救
題目描述 咚咚咚 查水表!原來是查水表來了,現在 找這麼熱心上門的查表員啊!小明感動的熱淚盈眶,開起了門 媽媽下班回家,街坊鄰居說小明被一群陌生人強行押上了警車!媽媽豐富的經驗告訴她小明被帶到了t區,而自己在s區。該市有m條大道連線n個區,一條大道將兩個區相連線,每個大道有乙個擁擠度。小明的媽媽雖然...
洛谷 P1396 營救
題目描述 咚咚咚 查水表!原來是查水表來了,現在 找這麼熱心上門的查表員啊!小明感動的熱淚盈眶,開起了門 媽媽下班回家,街坊鄰居說小明被一群陌生人強行押上了警車!媽媽豐富的經驗告訴她小明被帶到了t區,而自己在s區。該市有m條大道連線n個區,一條大道將兩個區相連線,每個大道有乙個擁擠度。小明的媽媽雖然...