BAPC2014 J&&HUNNU11590:Jury Jeopardy
2015-08-13 00:07
453 查看
题意:
一个迷宫,人一开始处在出口位置,要求遍历一次迷宫之后,回到初始位置,现在给出行走的方案,要出画出迷宫
人一开始面向右边
F:往前走一步
R:右转并往前走一步
L:左转并往前走一步
B:后转并往前走一步
思路:
直接模拟即可
一个迷宫,人一开始处在出口位置,要求遍历一次迷宫之后,回到初始位置,现在给出行走的方案,要出画出迷宫
人一开始面向右边
F:往前走一步
R:右转并往前走一步
L:左转并往前走一步
B:后转并往前走一步
思路:
直接模拟即可
#include <iostream> #include <stdio.h> #include <string.h> #include <stack> #include <queue> #include <map> #include <set> #include <vector> #include <math.h> #include <bitset> #include <algorithm> #include <climits> using namespace std; #define ls 2*i #define rs 2*i+1 #define UP(i,x,y) for(i=x;i<=y;i++) #define DOWN(i,x,y) for(i=x;i>=y;i--) #define MEM(a,x) memset(a,x,sizeof(a)) #define W(a) while(a) #define gcd(a,b) __gcd(a,b) #define LL long long #define ULL unsigned long long #define N 100005 #define INF 0x3f3f3f3f #define EXP 1e-8 #define rank rank1 const int mod = 1000000007; int t,len; char str[1000000]; int to[4][2]={0,1,1,0,0,-1,-1,0},vis[300][300]; int main() { int i,j,k; scanf("%d",&t); printf("%d\n",t); while(t--) { MEM(vis,0); scanf("%s",str); len = strlen(str); int r = 0; int x = 128,y=128; vis[x][y] = 1; int maxx,maxy,minx,miny; maxx = maxy = minx = miny = 128; for(i = 0;i<len;i++) { if(str[i]=='F') { x+=to[r][0]; y+=to[r][1]; vis[x][y] = 1; } else if(str[i]=='R') { r = (r+1)%4; x+=to[r][0]; y+=to[r][1]; vis[x][y] = 1; } else if(str[i]=='B') { r = (r+2)%4; x+=to[r][0]; y+=to[r][1]; vis[x][y] = 1; } else if(str[i]=='L') { r = (r+3)%4; x+=to[r][0]; y+=to[r][1]; vis[x][y] = 1; } maxx = max(maxx,x); maxy = max(maxy,y); minx = min(minx,x); miny = min(miny,y); } printf("%d %d\n",maxx-minx+3,maxy-miny+2); for(i = minx-1;i<=maxx+1;i++) { for(j = miny;j<=maxy+1;j++) { if(vis[i][j]) printf("."); else printf("#"); } printf("\n"); } } return 0; }
相关文章推荐
- octopress写文章步骤
- shell中单引号和双引号区别
- Linux下使用locale命令设置语言环境
- Shell 批量删除失效软链接
- VS2012新建MVC3/MVC4项目时,报:此模板尝试加载组件程序集“NuGet.VisualStudio.Interop...”
- 个人的技术知识网站
- linux Network Namespace
- Apache和Tomcat区别
- nginx
- 【运维调研】机房现状?运维困境?解决方案?请与我们一起发现问题!
- linux系统的7种运行级别
- #每日Linux小练习#09 trap指令
- 虚拟化环境下对公司业务服务器实现NLB+SQL高可用(一)
- 实现OPENCV之findcontours函数(一)
- ubuntu系统 ln 命令使用说明,创建链接
- Nginx 笔记与总结(11)Nginx + php-fpm + MySQL 安装 ecshop
- 菜鸟第三天:Linux根文件系统详解
- TopCoder SRM665 Div2 B
- Linux GCC常用命令
- 网易yum源配置 CentOS6.5