P177 test 6-4 UVa439
//P177 test 6-4 UVa439
#include<cstdio>
#include<cstring>
#include<queue>
using namespace std;
, , , , -, -, -, -}; //转向控制
, -, , -, , -, , -};
][]; //记录步数
void bfs(int x,int y,int ex,int ey)
{
queue<int> a, b;
a.push(x);
b.push(y);
int px, py;
;
while(!a.empty())
{
px = a.front();
a.pop();
py = b.front();
b.pop();
; i < ; i++)
{
&& px + turnx[i] <= && py + turny[i] > && py + turny[i] <= )
{
step[px + turnx[i]][py + turny[i]] = step[px][py] + ;
b.push(py + turny[i]);
a.push(px + turnx[i]);
if(px + turnx[i] == ex && py + turny[i] == ey)
{
kase = ;
break;
}
}
}
if(kase)break;
}
}
int main()
{
int x, ex, y, ey;
],s2[];
)
{
x = s1[] - ;
y = s1[] - ' ;
ex = s2[] - ;
ey = s2[] - ' ;
memset(step, , sizeof(step));
bfs(x,y,ex,ey);
printf("%d\n", step[ex][ey]);
}
;
}
P177 test 6-4 UVa439的更多相关文章
- P177 test 6-3 UVa536
//P177 test 6-3 #include<cstdio> #include<cstring> using namespace std; +],s2[+]; int re ...
- [刷题]算法竞赛入门经典(第2版) 6-4/UVa439 6-5/UVa1600
比较忙比较累,只贴代码了. 题目:6-4 UVa439 - Knight Moves //UVa439 - Knight Moves //Accepted 0.000s //#define _XIEN ...
- uva-439
题意:骑士在一个8*8的棋盘上移动,1-8代表行号,a-h代表列号,给出骑士的初始位置和目的位置,求骑士最少的移动步数:题目隐含一层意思(骑士移动规则是中国象棋的“马”的走法) 输入:一串字符串,包含 ...
- uva439 - Knight Moves(BFS求最短路)
题意:8*8国际象棋棋盘,求马从起点到终点的最少步数. 编写时犯的错误:1.结构体内没构造.2.bfs函数里返回条件误写成起点.3.主函数里取行标时未注意书中的图. #include<iostr ...
- UVa439——骑士的移动
简单bfs #include <iostream> #include <cstring> #include <string> #include <map> ...
- Uva439:BFS题目总结
#define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cstring> #include <cstd ...
- UVA439 knightMoves (A*启发搜索)
第一个A*,纪念下. A*要保证最短路一定要估价函数小于等于实际值,越接近越好 估价函数取Manhattan距离除以二. //Rey #include<cstdio> #include&l ...
- 【习题 6-4 UVA-439】Knight Moves
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] bfs模板题 [代码] /* 1.Shoud it use long long ? 2.Have you ever test sev ...
- UVA439 骑士的移动 Knight Moves
#include<bits/stdc++.h> using namespace std; char a,c; int b,d; ][]; ]={,,,-,,-,-,-}; ]={,-,,, ...
随机推荐
- ARM处理器工作模式
学习ARM处理器参考的首选资料是ARM Architecture Reference Manual,是最专业权威的学习资料. ARM处理器共有7种工作模式,如表1-1和1-2所示: 表1-1 处理器工 ...
- 使用spol导出exce
sqlplus 能生产xls的excel文件 connect / as sysdba; SET NEWPAGE 0 SET SPACE 0 SET LINESIZE 80 SET PAGESIZE 0 ...
- PHP使用JPG生成GIF动画图片,基于php_imagick_st-Q8.dll
PHP使用php_imagick_st-Q8.dll类库,把JPG图片连接生成GIF动画图片,需要事先下载好php_imagick_st-Q8.dll,文件,并配置php.ini文件,启用php_im ...
- 前端制作篇之meta标签篇
移动端前端制作有些地方不同于互联网,这篇主要讨论的是meta标签.meta标签位于之间.是主要辅助HTML结构层的.meta标签不管在互联网前端还是在移动端都起了很重要的作用.这里只讨论移动端. 附上 ...
- XML解析之SAX解析技术案例
Java代码: package com.xushouwei.xml; import java.io.File; import java.io.IOException; import java.text ...
- delphi bitbutton和speedbutton.button有什么区别
http://zhidao.baidu.com/link?url=LT9_iwv47GfSp3m0MmUSablZrPOxzjKtqWW1yVMTbHnIs2DdCE-0qX2bwXZ2020x_Jl ...
- CentOS-6.6下Tomcat-7.0安装与配置(Linux)
CentOS-6.6下Tomcat-7.0安装与配置(Linux) 一.认识tomcat Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目, ...
- tomcat 错误查看
路径 : \tomcat\logs 清除日志,重新启动生成 从上到下,依次查看错误,可以看到,上面的两个是系统的启动模块.然后第三行错误提示,明显指出了错误原因 “NoClassDefFoundErr ...
- eclipse调试找不到源解决办法
eclipse调试时有时显示找不到源码,首先得确定代码没问题 这是eclipse没有发现工程源码,解决办法是 右键工程>>Debug As >> Debug configura ...
- 如何去掉Atom的右键菜单?
Win+R -- regedit -- Ctrl+F -- 搜索"Atom"(或者直接"Open with Atom") -- 找到有个值为Open with ...