ADV-201 我们的征途是星辰大海
共有四种方格:
‘.’ 代表空地,curiosity可以穿过它
‘#’ 代表障碍物,不可穿越,不可停留
‘S’ 代表curiosity的起始位置
‘T’ 代表curiosity的目的地
NASA将会发送一系列的命令给curiosity,格式如下:“LRUD”分别代表向左,向右,向上,向下走一步。由于地球和火星之间最近时也有55000000km!所以我们必须提前判断这一系列的指令会让curiosity最终处在什么样的状态,请编程完成它。
每个测试样例第一行是一个整数N(1<=N<=50))代表迷宫的大小(N*N)。随后的N行每行由N个字符串组成,代表迷宫。接下来的一行是一个整数Q,代表有多少次询问,接下来的Q行每行是一个仅由“LRUD”四个字母的组成的字符串,字符转长度小于1000.
“I get there!”:执行给出的命令后curiosity最终到达了终点。
“I have no idea!”:执行给出的命令后curiosity未能到达终点。
“I am dizzy!”:curiosity在执行命令的过程中撞到了障碍物。
“I am out!”:代表curiosity在执行命令的过程中走出了迷宫的边界。
Sample Input
2
2
S.
#T
2
RD
DR
3
S.#
.#.
.T#
3
RL
DDD
DDRR
Sample Output
I get there!
I am dizzy!
I have no idea!
I am out!
I get there!
#include<string.h>
#include<stdio.h>
#define maxn 60
char map[maxn][maxn];
int dx[4]={1,0,-1,0};
int dy[4]={0,1,0,-1};
int n,q;
char s[1100];
char a[4][100]={"I get there!","I have no idea!","I am dizzy!","I am out!"};
int main()
{int t,i,j,k,flag,x,y;scanf("%d",&t);while (t--){scanf("%d",&n);for (i=0;i<n;i++){scanf("%s",map[i]);}int flag1=1;for (i=0;flag1&&i<n;i++){for (j=0;flag1&&j<n;j++){if (map[i][j]=='S'){x=i;y=j;flag1=0;}}}scanf("%d",&q);for (k=0;k<q;k++){flag=1;int ans=1;scanf("%s",s);int x1=x;int y1=y;int nx,ny;for (i=0;flag&&s[i]!='\0';i++){if (s[i]=='L'){nx=x1;ny=y1-1;}else if (s[i]=='R'){nx=x1;ny=y1+1;}else if (s[i]=='U'){nx=x1-1;ny=y1;}else if (s[i]=='D'){nx=x1+1;ny=y1;}if (nx<0||nx>=n||ny<0||ny>=n){ans=3;flag=0;break;}x1=nx;y1=ny;if (map[x1][y1]=='T'){ans=0;flag=0;break;}if (map[x1][y1]=='#'){ans=2;flag=0;break;}}printf("%s\n",a[ans]);}}return 0;
}
#include<stdio.h>
#include<string.h>
int main()
{int t,n,i,j,k,l,h,q,x,y,X,Y,m,count=0;char a[1001][1001]={'0'};char b[1001]={'0'};int c[1001]={0};scanf("%d",&t);for(i=0;i<t;i++){scanf("%d",&n);for(j=0;j<n;j++){scanf("%s",a[j]);}for(j=0;j<n;j++){for(k=0;k<n;k++){if(a[j][k]=='S'){X=k;Y=j;}}}scanf("%d",&q);for(j=0;j<q;j++){x=X;y=Y;scanf("%s",b);h=strlen(b);for(l=0;l<h;l++){if(b[l]=='L'){x-=1;}if(b[l]=='R'){x+=1;}if(b[l]=='D'){y+=1;}if(b[l]=='U'){y-=1;}if(a[y][x]=='#'){c[count]=3;break;}if(a[y][x]=='T'){c[count]=1;break;}if(x<0||y<0||x>=n||y>=n){c[count]=4;break;}}count++;}}for(m=0;m<count;m++){switch (c[m]){case 1:printf("I get there!\n");break;case 3:printf("I am dizzy!\n");break;case 4:printf("I am out!\n");break;default:printf("I have no idea!\n");break;}}return 0;}
ADV-201 我们的征途是星辰大海相关推荐
- 从入门到精(fang)通(qi)第5期 我们的征途是星辰大海
生物信息分析:从入门到精(fang)通(qi)第5期 我们的征途是星辰大海 GeneDock聚道科技 为生命计算,助看病不难! 已关注 19 人赞同了该文章 生信小白:震惊!一个全基因组会产生数百万个 ...
- Linux系统:我们的征途是星辰大海!
<JAVA啃骨头>之 Linux操作系统 章节 Linux:我们的征途是星辰大海 ! <星辰大海> 黄霄雲 QQ音乐: link 对Linux 系统的理解 Linux操作系统在 ...
- Java 蓝桥杯 我们的征途是星辰大海
Java 蓝桥杯 我们的征途是星辰大海 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,curiosity可以穿过它 '#' 代 ...
- 蓝桥杯javac组我们的征途是星辰大海
Java 蓝桥杯 我们的征途是星辰大海 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,curiosity可以穿过它 '#' 代 ...
- 我们的征途是星辰大海 蓝桥杯 Java组
我们的征途是星辰大海:题目 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,curiosity可以穿过它 '#' 代表障碍物,不 ...
- 蓝桥杯 ADV-201 VIP试题 我们的征途是星辰大海(试题解析)
试题 算法提高 我们的征途是星辰大海 提交此题 评测记录 资源限制 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格 ...
- [蓝桥杯]测试题 E 算法提高 我们的征途是星辰大海 题解和C++示例代码
E 算法提高 我们的征途是星辰大海 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表 ...
- Java实现 蓝桥杯VIP 算法提高 我们的征途是星辰大海
算法提高 我们的征途是星辰大海 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,c ...
- 问题 : 我们的征途是星辰大海
算法提高 我们的征途是星辰大海 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: ...
- 蓝桥杯 ADV-201 算法提高 我们的征途是星辰大海
算法提高 我们的征途是星辰大海 时间限制:1.0s 内存限制:256.0MB 最新的火星探测机器人curiosity被困在了一个二维迷宫里,迷宫由一个个方格组成. 共有四种方格: '.' 代表空地,c ...
最新文章
- ActiveMQ组件使用方法
- Mac 技术篇-VS Code插件安装方法,查看vscode已安装插件的方法
- 正则表达式格式化字符串
- 纯函数式编程语言_纯功能编程语言如何改变您的生活。
- 桶排序算法c语言10个数组,桶排序算法
- Ranger-Sqoop2插件安装
- 在.NET 对XML的一些基本操作
- day21-2 类的派生
- 编译telepresence:没有规则可制作目标“tinywrap/ActionConfig.cxx”,由“telepresence-ActionConfig.o” 需求。
- [网络安全自学篇] 七.快手视频下载之Chrome浏览器Network分析及Python爬虫探讨
- 用java做出长方体的表面积_Android Studio实现长方体表面积计算器
- 路在脚下,梦就在前方
- 重学css 0x3 CSS效果
- 配置JAVA 环境变量
- 将 JPG 或 PNG 图像转换为 Dicom
- 用java下载apk解析包出错_Android 9.0 安装包解析错误 java.lang.SecurityException: Permission Denial解决方案...
- 基于快速傅里叶变换实现的狗声识别器(人工智能)
- C语言函数的基础运用-----二项式定理的运用
- SpringBoot 自定义实现一个启动器starter 教程。
- 如何关闭系统自带的屏幕放大125%