AcWing 3152. 兰顿蚂蚁
原题链接
简单
作者:
你拿什么感同身受
,
2024-04-08 17:01:55
,
所有人可见
,
阅读 11
java
import java.util.*;
public class Main{
public static void main(String[]args){
Scanner sc=new Scanner(System.in);
int m=sc.nextInt();
int n=sc.nextInt();
int [][]str=new int[m+1][n+1];
//左,上,右,下
int dx[]={-1,0,1,0};
int dy[]={0,1,0,-1};
for(int i=0;i<m;i++)
{
for(int j=0;j<n;j++)
{
str[i][j]=sc.nextInt();
}
}
int x=sc.nextInt();
int y=sc.nextInt();
char s=sc.next().charAt(0);
int k=sc.nextInt();
int d=get_loation(s);
while(k-->0)
{
if(str[x][y]==0)
{
str[x][y]=1;
d=((d-1)%4+4)%4;
x=x+dx[d];
y=y+dy[d];
}
else
{
str[x][y]=0;
d=(d+1)%4;
x=x+dx[d];
y=y+dy[d];
}
}
System.out.print(x);
System.out.print(" ");
System.out.print(y);
}
public static int get_loation(char s)
{
if(s=='U') return 0;
if(s=='R') return 1;
if(s=='D') return 2;
return 3;
}
}