题目大意:

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

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

 #include <iostream>
#include <stdio.h>
#include <math.h>
#include <algorithm>
using namespace std; int n, visit[];
double x[], y[];
double G[][];
double dist[];
const int inf = ; void dijkstra() {
fill(visit, visit + n, );
fill(dist, dist + n, inf);
dist[] = ;
for (int i = ; i < n; i++) {
int minn = inf, v;
for (int j = ; j < n; j++) {
if (!visit[j] && dist[j] < minn) {
minn = dist[j];
v = j;
}
}
visit[v] = ;
if (v == )
break;
for (int j = ; j < n; j++) {
if (!visit[j])
dist[j] = min(dist[j], max(dist[v], G[v][j]));
}
}
} int main() {
int cnt = ;
while (true) {
cin >> n;
if (n == )
break;
for (int i = ; i < n; i++)
cin >> x[i] >> y[i];
for (int i = ; i < n; i++) {
for (int j = ; j < n; j++)
G[i][j] = sqrt((x[i] - x[j]) * (x[i] - x[j]) + (y[i] - y[j]) * (y[i] - y[j]));
}
dijkstra();
printf("Scenario #%d\n", ++cnt);
printf("Frog Distance = %.3lf\n\n", dist[]);
}
return ;
}

poj2253 Frogger dijkstra的更多相关文章

  1. poj2253 Frogger Dijkstra变形

    题目链接:http://poj.org/problem?id=2253 就是求所有路径的最大边权值的最小值 处理时每次找出距离当前的已选的节点的最短距离,然后更新每个未选节点的值 代码: #inclu ...

  2. poj 2253 Frogger dijkstra算法实现

    点击打开链接 Frogger Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 21653   Accepted: 7042 D ...

  3. POJ-2253 Frogger(最短路)

    https://vjudge.net/problem/POJ-2253 题意 公青蛙想到母青蛙那里去,期间有许多石头,公青蛙可以通过这些石头跳过去.问至少要跳的最大距离,即所有路径上石头间的最大距离的 ...

  4. POJ2253 Frogger —— 最短路变形

    题目链接:http://poj.org/problem?id=2253 Frogger Time Limit: 1000MS   Memory Limit: 65536K Total Submissi ...

  5. poj2253 Frogger(最短路变型或者最小生成树)

    /* 题意:就是源点到终点有多条的路径,每一条路径中都有一段最大的距离! 求这些路径中最大距离的最小值! Dijkstra, Floyd, spfa都是可以的!只不过是将松弛的条件变一下就行了! 想了 ...

  6. POJ2253 Frogger

    Frogger Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 34865   Accepted: 11192 Descrip ...

  7. POJ2253——Frogger(Floyd变形)

    Frogger DescriptionFreddy Frog is sitting on a stone in the middle of a lake. Suddenly he notices Fi ...

  8. POJ2253 Frogger(最短路)

    题目链接. 题意: 从0号点,到1号点,找一条能通过的路,使得这条路中的最大的边,比其它所有可能的路中的边都小. 分析: 这题就是按着dijkstra写,写着写着觉得像是prim了. 其中d[n]表示 ...

  9. POJ-2253.Frogger.(求每条路径中最大值的最小值,最短路变形)

    做到了这个题,感觉网上的博客是真的水,只有kuangbin大神一句话就点醒了我,所以我写这篇博客是为了让最短路的入门者尽快脱坑...... 本题思路:本题是最短路的变形,要求出最短路中的最大跳跃距离, ...

随机推荐

  1. 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

    参考文章: 微信小程序 修改(自定义) 单选/复选按钮样式 checkbox/radio样式自定义

  2. table加载慢

    为了让大表格(table)在下载的时候可以分段的显示,就是说在浏览器解析html时,table是作为一个整体解释的,使用tbody可以优化显示,如果表格很长,用tbody分段,可以一部分一部分地显示, ...

  3. 升级TeeChart pro

    teechart 安装流程如下: 1.  将生成的 LIB中的 选中文件copy到C:\Users\Public\Documents\RAD Studio\8.0\Dcp 图1 1.  fastrep ...

  4. selenium 安装与环境配置

    selenium的安装 环境配置:python2.7+selenium2+Firefox46以下版本 本次安装环境:python2.7.13+selenium2.53.6+Firefox46 官网下载 ...

  5. C# MODBUS 通信

    背景 电厂有多组监控设备,需要在指定的设备上显示某些数据(其他设备对接过来的).通信协议是modbus主从结构. 源码: http://download.csdn.net/download/wolf1 ...

  6. 06-struts2与ognl的结合

    1 参数接收 2 配置文件中 1 Demo2Action package www.test.c_config; import com.opensymphony.xwork2.ActionSupport ...

  7. Oracle 数据类型详解

    数据类型(datatype)是列(column)或存储过程中的一个属性. Oracle支持的数据类型可以分为三个基本种类:字符数据类型.数字数据类型以及表示其它数据的数据类型. 字符数据类型 CHAR ...

  8. SpringMVC框架下实现分页功能

    1.创建实体类Page.java @Entity public class Page { private int totalRecord;// 表示查询后一共得到多少条结果记录 private int ...

  9. C# 数据库连接增删改查

    C# 连接数据库 using System.Data.sqlCliect; // 加在头 main函数里面用法(删) //连接字符串 string Connectionstring = "s ...

  10. 2017年11月4日 vs类和结构的区别&哈希表&队列集合&栈集合&函数

    类和结构的区别 类: 类是引用类型在堆上分配,类的实例进行赋值只是复制了引用,都指向同一段实际对象分配的内存 类有构造和析构函数 类可以继承和被继承 结构: 结构是值类型在栈上分配(虽然栈的访问速度比 ...