HDACM 1035
模拟
import java.util.Scanner;public class Main{public static void main(String[] args) {Scanner sc = new Scanner(System.in);while(sc.hasNext()){int n = sc.nextInt();int m = sc.nextInt();int s = sc.nextInt();if (n==0&&m==0&&s==0) {break;}String strs[] = new String[n];for (int i = 0; i < strs.length; i++) {strs[i] = sc.next();}int step[][] = new int[n][m];boolean isExit = true;int x = s-1;int y = 0;int i = 1;step[y][x] = i;while(true){char c = strs[y].charAt(x);if (c=='W') {x--;}if (c=='E') {x++;}if (c=='N') {y--;}if (c=='S') {y++;}if (x<0||x>=m||y<0||y>=n) {//走出去了break;}if (step[y][x]!=0) {//开始循环isExit = false;break;}i++;step[y][x]= i;}if (isExit) {System.out.println(i+" step(s) to exit");}else{System.out.println(step[y][x]-1+" step(s) before a loop of "+(i-step[y][x]+1)+" step(s)");}}sc.close();}}