POJ 2253 Frogger【最短路變形——路徑上最小的最大權】
/* 題意:給出一個無向圖,求一條1~2的路徑使得路徑上的最大邊權最小. 分析:dijkstra變形,將更新距離的過程改為取最大值即可. */ #include<stdio.h> #include<math.h> #include<string.h> #include<algorithm> using namespace std; const double DNF = 2000; const int maxn = 210; double w[maxn][maxn]; double d[maxn]; int vis[maxn]; int n; double ans; struct Point{ double x,y; }p[maxn]; double dist(Point a, Point b) { return sqrt((a.x-b.x)*(a.x-b.x) + (a.y-b.y)*(a.y-b.y)); } void Dijkstra() { for(int i = 1; i <= n; i++) d[i] = DNF; d[1] = 0; memset(vis,0,sizeof(vis)); for(int i = 1; i <= n; i++) { int x; double m = DNF; for(int y = 1; y <= n; y++) if(!vis[y] && d[y] <= m) m = d[x=y]; vis[x] = 1; if(ans < d[x] && d[x]!= DNF) // ans 是這條路徑上的最大權 { ans = d[x]; } if(x == 2) return; //走到目的地即可 for(int y = 1; y <= n; y++) if(!vis[y]) d[y] = min(d[y], w[x][y]); //更新未接入的點的dist } } int main() { int kcase = 0; while(scanf("%d", &n) != EOF) { if(n == 0) break; for(int i = 1; i <= n; i++) { scanf("%lf%lf", &p[i].x, &p[i].y); } for(int i = 1; i <= n; i++) { w[i][i] = 0; for(int j = i+1; j <= n; j++) { w[i][j] = dist(p[i],p[j]); w[j][i] = dist(p[i],p[j]); } } ans = 0; Dijkstra(); printf("Scenario #%d\n", ++kcase); printf("Frog Distance = %.3lf\n\n", ans); } }
相關推薦
POJ 2253 Frogger【最短路變形——路徑上最小的最大權】
/* 題意:給出一個無向圖,求一條1~2的路徑使得路徑上的最大邊權最小. 分析:dijkstra變形,將更新距離的過程改為取最大值即可. */ #include<stdio.h> #include<math.h> #include<string.h> #include&l
poj 2253 Frogger【最短路】
Frogger Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 32076
POJ-2253-Frogger(最短路變形)
Description Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sitting on another stone. He plans to visit
POJ 2253 Frogger (單源最短路變型 求路徑上最大邊權值的最小值)
題目連結 題目大意 輸入N(2≤N≤200)個點的座標,任意兩點可以互相到達,經過的距離為它們的歐式距離。現在從1號點到2號點有多條路徑,求這些路徑中最大邊權值的最小值。 分析 這題為單源最
POJ - 2253 Frogger(Floyd最短路+預處理)
最短路 pri str 之間 col ace blank scanf oid 題目鏈接:http://poj.org/problem?id=2253 題意:青蛙要從點1到點2,給出各點的坐標,如果點A到點B可以通過A->C,C->B,A到B的距離可以用A-&g
POJ-2253 Frogger dijsktra查找間隔最小的路徑
scan main struct 路徑 can 註意 sta cst () 題目鏈接:https://cn.vjudge.net/problem/POJ-2253 題意 一只Forg需要從節點1走到節點n 現要找一條各個間隔最小的路徑 問間隔最小是多少 思路 用dijskt
POJ-2253 Frogger(最短路)
tor struct code namespace https href IV 所有 put https://vjudge.net/problem/POJ-2253 題意 公青蛙想到母青蛙那裏去,期間有許多石頭,公青蛙可以通過這些石頭跳過去。問至少要跳的最大距離,
【最短路變形】偷懶路徑
【題目描述】 呆子打算去上自習,雖然他不願意。他來到五教門口時,發現他來遲了,事先又沒有佔位子,可能沒有位子了。 根據經驗,他知道每個小教室有位子的概率為p1,每個梯形教室有位子的概率為p2,每個扇形教室有位子得概率為p3。 由於他並不是真的想上自習,所以他並不打算到每個教
POJ 2253 Frogger ,poj3660Cow Contest(判斷絕對順序)(最短路,floyed)
技術 memset lse 關系 size using onclick second win POJ 2253 Frogger題目意思就是求所有路徑中最大路徑中的最小值。 #include<iostream> #include<cstdio&g
POJ2253 Frogger —— 最短路變形
minimum ces eve tun res ppr sar ant blog 題目鏈接:http://poj.org/problem?id=2253 Frogger Time Limit: 1000MS Memory Limit: 65536K To
POJ-2263 Heavy Cargo---最短路變形&&最小邊的最大值
ostream \n memset 就是 現在 兩個 amp 自己的 ret 題目鏈接: https://vjudge.net/problem/POJ-2263 題目大意: 有n個城市,m條連接兩個城市的道路,每條道路有自己的最大復載量。現在問從城市a到城市b,車上的最大載
Frogger (最短路變形-求最短路上的最大權)
Freddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fiona Frog who is sitting on another stone. He plans to visit her, but
POJ-1797 Heavy Transportation(最短路變形)
Heavy Transportation Time Limit: 3000MS Memory Limit: 30000K Total Submissions:
2253 最短路變形 Bellman-Ford
傳送門題目大意: 題意很簡單就是有一個公青蛙想要去找母青蛙, 然後水上有n個石頭, 公青蛙在第一個上, 母青蛙在第二個. 然後給出n個石頭的座標, 求一個最小的跳躍距離, 這個跳躍距離是它所有的跳躍中距
Poj 1797 Heavy Transportation (最短路變形)
題意:給你一張圖,有n個點,m條邊。讓你求出從1點到n點的所有通路中最小邊的最大值。 題解:最短路的變形。把dijkstra中dis陣列中存的東西改成最小邊的最大值。每次找最大邊來作比較。然後更新di
poj 3635 BFS 最短路變形
【解題報告】 題意比較明確。給定N(N<=1000)個點的圖,要求從S到E花費最少。 其中每個點可以加油,給出每個點的油價。一個單位距離消耗一個單位油。車輛有最大儲存油量。 可以把這道題目理解為是一個二維的最短路,其中這個“路”在這裡並不是兩點之
51nod 1445 變色DNA(最短路變形)
clas freopen 次數 done 最短 sstream == pac 技術分享 http://www.51nod.com/onlineJudge/questionCode.html#!problemId=1445 題意: 思路: 挺好的一道題目,如果
浙大PAT CCCC L3-014 周遊世界 ( 最短路變形 )
進行 jks none 多少 錯誤 include 情況 ide continue 題目鏈接 題意 : 中文題請點鏈接,挺復雜的... 分析 : 乍一看是個最短路,實際就真的是個最短路。如果沒有 “ 在有多條最短路徑的時候輸出換乘次數最少的” 這一條件的約束,那麽這題就
POJ #2253 Frogger 變種Dijkstra
aps 路徑 lose script lap 只需要 efi double log Description 問題描述:鏈接 思路 題目的意思是青蛙想從第一塊石頭跳到第二塊石頭,中間有許多墊腳石,求能跳到第二塊石頭的路上至少需要跳多遠。拿第二個樣例來說,頂點 1
poj2253 最短路變形
sta col 解題思路 最短 節點 eal rop esc memset 題目連接:http://poj.org/problem?id=2253 Description Freddy Frog is sitting on a stone in the middle of