zoukankan      html  css  js  c++  java
  • poj2253 Frogger dijkstra

    题目大意:

    给出n个岛的坐标,前两个坐标分别为A青蛙和B青蛙所在岛的坐标,A青蛙想到达B青蛙所在的岛,A可以从某一个岛跳到任意其它一个岛上,则A到B的每条路径都有一个跳的最远的距离Xi,求这些最远距离中的最小值。

    用dijkstra解决,其中dist[J]为起点到J的所有路径中最长边的最小值。

     1 #include <iostream>
     2 #include <stdio.h>
     3 #include <math.h>
     4 #include <algorithm>
     5 using namespace std;
     6 
     7 int n, visit[200];
     8 double x[200], y[200];
     9 double G[200][200];
    10 double dist[200];
    11 const int inf = 2000;
    12 
    13 void dijkstra() {
    14     fill(visit, visit + n, 0);
    15     fill(dist, dist + n, inf);
    16     dist[0] = 0;
    17     for (int i = 0; i < n; i++) {
    18         int minn = inf, v;
    19         for (int j = 0; j < n; j++) {
    20             if (!visit[j] && dist[j] < minn) {
    21                 minn = dist[j];
    22                 v = j;
    23             }
    24         }
    25         visit[v] = 1;
    26         if (v == 1)
    27             break;
    28         for (int j = 0; j < n; j++) {
    29             if (!visit[j])
    30                 dist[j] = min(dist[j], max(dist[v], G[v][j]));
    31         }
    32     }
    33 }
    34 
    35 int main() {
    36     int cnt = 0;
    37     while (true) {
    38         cin >> n;
    39         if (n == 0)
    40             break;
    41         for (int i = 0; i < n; i++)
    42             cin >> x[i] >> y[i];
    43         for (int i = 0; i < n; i++) {
    44             for (int j = 0; j < n; j++)
    45                 G[i][j] = sqrt((x[i] - x[j]) * (x[i] - x[j]) + (y[i] - y[j]) * (y[i] - y[j]));
    46         }
    47         dijkstra();
    48         printf("Scenario #%d
    ", ++cnt);
    49         printf("Frog Distance = %.3lf
    
    ", dist[1]);
    50     }
    51     return 0;
    52 }
  • 相关阅读:
    spring cloud-之入门技术选型的抉择
    jvm系列之-gc日志查看
    jvm系列之-参数设置
    Code completion has become quite slow under Delphi7
    Python4Delphi注意事项
    SHFileOperation删除文件夹
    开漏输出,推挽输出
    DxGrexpt中的ExcelFormat (BIFF)
    通过exe名字查询句柄,String与ShortString转换函数分析
    Netstat判断商品是否正在使用
  • 原文地址:https://www.cnblogs.com/lxc1910/p/10544484.html
Copyright © 2011-2022 走看看