[uva] 10310 Dog and Gopher
来源:互联网 发布:潮流相机软件 编辑:程序博客网 时间:2024/05/21 22:45
[uva] 10310Dog and Gopher
【题目】http://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=1251
【题意】求最短可逃跑路线
【算法】简单几何
【题解】地鼠跑的路程*2<狗狗跑的路程的最优解
【注意】这是水题
【AC代码】
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
struct point{
double x,y;
}a,b,p[1000];
double d(point p1,point p2){
return sqrt((p1.x-p2.x)*(p1.x-p2.x)+(p1.y-p2.y)*(p1.y-p2.y));
}
int main(){
int n,i,t;
while(scanf("%d",&n)!=EOF){
//printf("%d\n",n);
scanf("%lf%lf%lf%lf",&a.x,&a.y,&b.x,&b.y);
//printf("%.2f %.2f %.2f %.2f\n",a.x,a.y,b.x,b.y);
for(i=0;i<n;i++)scanf("%lf%lf",&p[i].x,&p[i].y);
t=-1;
for(i=0;i<n;i++)if(2*d(a,p[i])<=d(b,p[i])&&(t==-1||d(a,p[t])>d(a,p[i]))) t=i;
if(t==-1)printf("The gopher cannot escape.\n");
else printf("The gopher can escape through the hole at (%.3f,%.3f).\n",p[t].x,p[t].y);
}
return 0;
}
【心得】这是开始几何的第一题么
- [uva] 10310 Dog and Gopher
- UVA 10310 - Dog and Gopher
- uva 10310 - Dog and Gopher
- UVa 10310 - Dog and Gopher
- UVa 10310 Dog and Gopher(long long)
- UVa 10310 Dog and Gopher(double)
- UVa Problem 10310 Dog and Gopher (狗拿地鼠)
- Dog and Gopher
- (挑战编程_13_1)Dog and Gopher
- UVa 10610 - Gopher and Hawks
- POJ 2610:Dog & Gopher
- ZOJ 1860:Dog & Gopher
- POJ 2610 Dog & Gopher G++
- ZOJ 1860|| Dog & Gopher(空行区分case
- POJ 2610 Dog & Gopher(水~)
- UVA 10080 Gopher 2
- UVa10610 - Gopher and Hawks(Dijkstra)
- UVA 11796 Dog Distance
- String 深入理解
- dom4j
- jquery 如何获得 html:text的值
- OpenCV实现PCA算法----输出异常
- 详解僵尸状态(EXIT_ZOMBLE)
- [uva] 10310 Dog and Gopher
- 使用bitmap思想解决字符串包含问题
- 千兆网口 Freescale ETSEC + Marvell 88E1111 uboot Linux 驱动分析 一
- gdb提示“you can't do that without a process to debug"解决方法
- 树莓派(raspberry pi) 系统在SD卡上安装Linux
- [uva] 10180 Rope Crisis in Ropeland!
- 笔试题总结
- 幸福慢加载---总结步步来
- 千兆网口 Freescale ETSEC + Marvell 88E1111 uboot Linux 驱动分析 二