poj 2243:Knight Moves
来源:互联网 发布:c语言判断是不是数字 编辑:程序博客网 时间:2024/06/08 03:19
解题思路:
最短路径,BFS
#include<iostream>#include<cstring> #include<stdio.h>#include<stdlib.h>using namespace std;int map[15][15];int s1,s2;int t1,t2;bool visit [15][15];int cover(){memset(map,0,sizeof(map));map[s1+1][s2+1] = 1;int step = 0;while(map[t1+1][t2+1]==0){for(int i=0;i<15;i++)for(int j=0;j<15;j++)visit[i][j] = false;for(int i=2;i<=9;i++)for(int j=2;j<=9;j++){if(map[i][j]==0){if(map[i-1][j-2]>0 && visit[i-1][j-2]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i-1][j+2]>0 && visit[i-1][j+2]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i+1][j-2]>0 && visit[i+1][j-2]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i+1][j+2]>0 && visit[i+1][j+2]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i-2][j-1]>0 && visit[i-2][j-1]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i-2][j+1]>0 && visit[i-2][j+1]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i+2][j-1]>0 && visit[i+2][j-1]==false){map[i][j] = 1;visit[i][j] = true;}if(map[i+2][j+1]>0 && visit[i+2][j+1]==false){map[i][j] = 1;visit[i][j] = true;}}}step++;}return step;}int main(){char c1,c2,c3,c4;while(cin>>c1>>c2>>c3>>c4){s1 = c1 - 'a' + 1;s2 = c2 - '0';t1 = c3 - 'a' + 1;t2 = c4 - '0';cout<<"To get from "<<c1<<c2<<" to "<<c3<<c4<<" takes "<<cover()<<" knight moves."<<endl;}return 0;}
0 0
- poj 2243 Knight Moves
- POJ 2243 Knight Moves
- poj 2243 Knight Moves
- POJ 2243 Knight Moves
- poj 2243 Knight Moves
- poj 2243 Knight Moves
- poj 2243 Knight Moves
- POJ 2243 Knight Moves
- POJ-2243-Knight Moves
- poj 2243 Knight Moves
- poj 2243:Knight Moves
- POJ 2243 Knight Moves
- poj-- 2243 Knight Moves
- POJ 2243 Knight Moves
- poj 2243 Knight Moves
- POJ 2243 Knight Moves
- POJ 2243 - Knight Moves
- POJ 2243 Knight Moves
- Spring3.0官网文档学习笔记(五)--3.3
- NOJ1073成绩排名——stable_sort
- 11、Jsoup的使用
- bootstrap3 创建页面
- Tips For Working With Unity #4: Coding and General Tips
- poj 2243:Knight Moves
- Android开发全程记录(十)——使用新浪微博授权登录和分享注意事项
- ASP.NET MVC URL重写与优化(初级篇)-使用Global路由表定制URL
- 编程之美之饮料供货问题
- JD 1521:二叉树的镜像
- 1、Android开发者福音-史上最快模拟器genymotion
- java List<>详解
- 【UNIX网络编程(三)】TCP客户/服务器程序示例
- 房子粉碎多少梦:120万买不下中产阶层粉碎机豢