import java.util.ArrayList;
import java.util.Scanner;

public class Main{
	 public static ArrayList<String> list=new ArrayList<String>();
	 public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		
		int t=sc.nextInt();
		while (t-->0) {
			sc.nextLine();
			int n=sc.nextInt();
			char arr[][]=new char[n][n];
			int x=0,y=0;
			for (int i = 0; i < n; i++) {//输入
				String str=sc.next();
				for (int j = 0; j <str.length(); j++) {
					arr[i][j]=str.charAt(j);
					if (arr[i][j]=='S') {
						x=i;
						y=j;
					}
				}
			}
			int m=sc.nextInt();//指令条数
			for (int i = 0; i < m; i++) {
				//直接判断指令,且输出答案
				String ZhiLin=sc.next();
				name(arr, ZhiLin, x, y);
			}
		}
		//输出结果
		for (String item : list) {
			System.out.println(item);
		}
	 }
	 
	 //判断指令,返回结果
	 public static void name(char arr[][],String Zhi,int x,int y) {
		for (int i = 0; i <Zhi.length(); i++) {
			char c=Zhi.charAt(i);
			if (c=='R') {
				y++;
			}if (c=='U') {
				x--;
			}if (c=='L') {
				y--;
			}if (c=='D') {
				x++;
			}
			//判断位置
			if (x<0 || y<0 || x>=arr.length || y>=arr[0].length) {
				list.add("I am out!");
				return ;//退出
			}else if(arr[x][y]=='#'){
				list.add("I am dizzy!");
				return ;
			}else if (arr[x][y]=='T') {
				list.add("I get there!");
				return ;
			}
		}
		//未能到达终点
		list.add("I have no idea!");
		//return ; 不能加return,加了不能通过。
	}
	
}

-------------------------

这个return可有可无,并且在我的电脑上测试样例可以通过。

但提交后无法通过。

20200917317123_sSTmQN.jpg

点赞(0)
 

0.0分

1 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 1 条评论

小发家 4年前 回复TA
我也是,报格式错误