POJ2253 Frogger -DIJKSTRA || FLOYD最短路练习
来源:互联网 发布:mac浏览器插件删除 编辑:程序博客网 时间:2024/05/16 01:03
题目大意:池塘里有N片荷叶,给出每片荷叶的坐标,青蛙要从X号荷叶跳到Y号荷叶,问单步最少要跳多少才能到达。
题解:这道题可以采取类FLOYD的方法,要从X跳到Y,当越来越多的荷叶做为中间点来跳的时候,显然有可能单步跳的距离更短。程序如下:
#include<stdio.h>#include<math.h>#include<stdlib.h>const int maxn=210;struct point{int x,y;}p[maxn];double d[maxn][maxn];double max(double x,double y){ return x>y?x:y; }int main(){ int i,j,k,m,n,num=0; double s; while(1){ num++; scanf("%d",&n); if(!n)break; for(i=1;i<=n;i++) scanf("%d%d",&p[i].x,&p[i].y); for(i=1;i<=n;i++) for(j=1;j<=n;j++){ s=sqrt((p[i].x-p[j].x)*(p[i].x-p[j].x)+(p[i].y-p[j].y)*(p[i].y-p[j].y)); d[i][j]=s; d[j][i]=s; } for(k=1;k<=n;k++) for(i=1;i<=n;i++) for(j=1;j<=n;j++) if(d[i][j]>max(d[i][k],d[k][j])){ d[i][j]=max(d[i][k],d[k][j]); } printf("Scenario #%d\nFrog Distance = %.3f\n\n",num,d[1][2]); } return 0;}
0 0
- POJ2253 Frogger -DIJKSTRA || FLOYD最短路练习
- POJ2253 Frogger(最短路变形,floyd,Dijkstra,spfa)
- POJ2253 Frogger(floyd最短路算法)
- poj2253~Frogger(最短路floyd)
- POJ2253 Frogger Dijkstra & Floyd
- poj2253 Frogger +poj1797Heavy Transpotaion(最短路dijkstra变式)
- poj2253 Frogger(最短路变形)
- POJ2253 Frogger 最短路变形
- POJ2253--Frogger FLOYD【最小树变形】
- 最短路poj2253(floyd)
- poj2253 Dijkstra 求最短路
- poj2253 - Frogger(最短路变形)
- POJ2253---Frogger(最短路变形)
- POJ2253 Frogger 【Floyd】
- POJ2253 Frogger (FLOYD)
- poj2253 Frogger 图论,Floyd
- POJ2253 Frogger(Floyd)
- Frogger(poj2253)-floyd变形
- oracle表分区
- UVA - 10330 Power Transmission 最大流问题
- sort与二分法
- 第一話(教學): 讓我們向Cocos2d Say HelloWorld
- 和学生谈毕设
- POJ2253 Frogger -DIJKSTRA || FLOYD最短路练习
- applicationContext.xml配置分析
- 用户权限打开引导 (相机)
- iOS疯狂详解之适配百度地图授权问题
- swift学习---长句部分二(第一次计划看一本完整的英文资料,你是最棒的,加油)
- Java编程思想重点笔记(Java开发必看)
- ConcurrentHashMap 源码分析 (一)
- android studio 安装
- TCP_NODELAY, SO_KEEPALIVE, SO_LINGER