POJ训练计划1573_Robot Motion(递归)
来源:互联网 发布:bearychat mac 编辑:程序博客网 时间:2024/04/28 06:34
解题报告
递归
每次访问到的点让他变成步数,不过我的写法明显有缺陷,那就是最大的步数不会大于60步,如果大于60步可能就出错了。
解决的办法就是另外开一个二维数组来记录步数。。。
#include <iostream>#include <stdio.h>#include <string.h>using namespace std;char mmap[1000][1000];int n,m,t;void dfs(int s,int e,int step){ if(s>=n||s<0||e>=m||e<0) { printf("%d step(s) to exit\n",step-1); return ; } else if(mmap[s][e]<'A') { printf("%d step(s) before a loop of %d step(s)\n",mmap[s][e]-1,step-(mmap[s][e])); return ; } if(mmap[s][e]=='N') { mmap[s][e]=step; dfs(s-1,e,step+1); } else if(mmap[s][e]=='S') { mmap[s][e]=step; dfs(s+1,e,step+1); } else if(mmap[s][e]=='W') { mmap[s][e]=step; dfs(s,e-1,step+1); } else if(mmap[s][e]=='E') { mmap[s][e]=step; dfs(s,e+1,step+1); }}int main(){ int i,j; while(~scanf("%d%d",&n,&m)&&(n&&m)) { scanf("%d",&t); memset(mmap,0,sizeof(mmap)); for(i=0;i<n;i++) { scanf("%s",mmap[i]); } dfs(0,t-1,1); } return 0;}
0 0
- POJ训练计划1573_Robot Motion(递归)
- POJ 1573 Robot Motion 递归模拟
- 杭电OJ-1035_Robot Motion
- poj 1573 Robot Motion 【模拟】【刷题计划】
- poj系统训练计划
- ACM POJ训练计划
- poj训练计划
- poj训练计划
- POJ DP训练计划
- POJ训练计划
- POJ训练计划
- poj训练计划
- POJ 1573 Robot Motion(模拟)
- POJ 1573 Robot Motion(BFS)
- POJ 1573 Robot Motion(BFS)
- POJ 1573 Robot Motion (模拟)
- poj 1573 Robot Motion
- Poj 1573 Robot Motion
- ios自制tableview的cell
- Java注释Override、Deprecated、SuppressWarnings详解
- qemu 安装 (arm体系结构)
- 再谈PHP单引号和双引号区别
- Nginx+ssi结合配置
- POJ训练计划1573_Robot Motion(递归)
- 硅谷面试经:如何证明你是最优秀的?
- jquery one time 事件每一秒种轮询一次
- CentOS6 安装MySQL
- Linux远程主机自动登录
- 安卓开发之相对布局
- 多队列网卡简介
- C++第二次作业
- 第三周任务