SDNU1025马踏飞燕
再一次做,出现两个错误,一个是
使用BFS时,在添加新节点的时候队列尾指针qq+1忘记了//这种错误容易在测试样例过程中发现
另一个是
棋盘的范围问题:按照题意,棋盘应当包括边界坐标为0和100的直线//这种错误不容易被察觉,应当记住这种类型的错误
AC代码如下:
#include<iostream>
#include<cstring>
using namespace std;
struct node
{int x;int y;int s;//节点所在当前步数
} link[10001];
int vis[100][100];//访问标记数组
int x,y,m,n;
int flag;//表示四步之内有没有踏到
int step[8][2]= {{-1,-2},{-1,2},{1,-2},{1,2},{-2,-1},{-2,1},{2,-1},{2,1}};
int pp,qq;
bool judge(int x,int y)
{if(vis[x][y]==1||x<0||x>100||y<0||y>100)return false;elsereturn true;
}
void bfs()
{//特殊情况if(x==m&&y==n){flag=1;return;}while(pp<qq)//队列非空{if(link[pp].s==4)break;for(int i=0; i<8; i++){int xx=link[pp].x+step[i][0];int yy=link[pp].y+step[i][1];if(judge(xx,yy)){if(xx==m&&yy==n){flag=1;break;}else{vis[xx][yy]=1;
//入队link[qq].x=xx;link[qq].y=yy;link[qq].s=link[pp].s+1;qq++;//入队后不要忘记指针增加}}}if(flag)break;pp++;}
}
int main()
{cin>>x>>y>>m>>n;memset(vis,0,sizeof(vis));pp=qq=0;link[qq].x=x;link[qq].y=y;link[qq].s=0;qq++;//入队flag=0;//踏到=1bfs();if(flag)cout<<"Y"<<endl;elsecout<<"N"<<endl;return 0;
}
SDNU1025马踏飞燕相关推荐
- sdnu1025 马踏飞燕
题目 Description 无聊的陶陶准备编写一款游戏,名字就叫做"马踏飞燕",在这款游戏中有个一个100*100的坐标,把马放在任意一个坐标点,再把燕子放在任意一个坐标点,并且 ...
- SDNUOJ 1025.马踏飞燕
Time Limit: 1000 MS Memory Limit: 32768 KB Total Submission(s): 920 Accepted Submission(s): 37 ...
- SDNU 1025 马踏飞燕 DFS
搜了哈发现都在用bfs在做 然而我不会bfs 所以发一哈dfs的代码 虽然马踏飞燕加强版1027是没法用dfs做的23333 #include<cstdio> #include<io ...
- SDNU 1027 马踏飞燕序
这是一道标准的BFS题,先将题目贴一下: 写这道题就当是复习一下BFS吧 Description 上次的马踏飞燕是不是没玩够?无聊的lg准备编写一款游戏,就是加强版的"马踏飞燕", ...
- SDNU OJ 1025 马踏飞燕
该题是一道使用BFS(广度优先搜索)的经典题目(当然如果你不怕麻烦,DFS也是可以的), 思路很简单,用queue存下各个情况每次都判断是否踏到燕子,并且记得记录深度. Description 无聊的 ...
- SDNU__1025.马踏飞燕
无聊的陶陶准备编写一款游戏,名字就叫做"马踏飞燕",在这款游戏中有个一个100*100的坐标,把马放在任意一个坐标点,再把燕子放在任意一个坐标点,并且燕子不会移动,马只能按照象棋规 ...
- SDNUOJ 1025.马踏飞燕(DFS||BFS))
Time Limit: 1000 MS Memory Limit: 32768 KB Description 无聊的陶陶准备编写一款游戏,名字就叫做"马踏飞燕",在这款游戏中有个一 ...
- SDNU 1027 马踏飞燕(续) 【BFS】
Description 上次的马踏飞燕是不是没玩够?无聊的lg准备编写一款游戏,就是加强版的"马踏飞燕",在这款游戏中有个一个2000*2000的坐标,把马放在任意一个坐标点,再把 ...
- “马踏飞”AI机器人实现方案介绍
当今互联网随处可见各种语音助手,从手机到智能音响,从机器人到手机App语音助手.随着公司业务的发展,今年我们也决定搭建自己的智能客服系统,同时结合公司自身业务,马踏飞燕App 旅游比价业务场景,同时参 ...
最新文章
- How to make Windows Form app truly Full Screen (and to hide Taskbar) in C#? 转
- python用WMI等获取及修改windows系统信息
- Elasticsearch java api(五) Bulk批量索引
- 扔掉目标检测器,实现真正的端到端多模态预训练!阿里提出E2E-VLP(ACL2021)...
- Exploit练习Protostar——stack3
- 100路监控需要使用核心交换机吗?
- 【Elasticsearch】为什么我在Elasticsearch集群中看到大量的拒绝?
- 手工给alv添加合计
- 人口各省预测模型matlab_MATLAB实验9河南省人口预测模型马尔萨斯人口模型.doc
- 【前端】弹出框提交表单
- 第二日(1)一个IDA下载地址
- LaTeX 在线编辑器(LaTeX online editors)
- java 实现生成公司的电子公章,并且盖章生成电子合同
- html怎么设置文字无法复制粘贴,网页文字无法复制粘贴怎么办
- Android 入门宝典 - inflate 生成视图 动态加载视图
- 基于Labview的瀑布图的生成
- SpringBoot重点详解--事件监听
- 【List】个人 常用学习工作软件清单
- 【C#】记录一次上位机软件界面闪退分析及解决方案
- 夜神模拟器adb查看log