/*
注意一下蚂蚁的活动顺序,颠倒就错了
*/
#include<iostream>
#include<cstdio>
using namespace std;
char r[4]={'U','R','D','L'}; //右转时朝向顺序
char l[4]={'U','L','D','R'}; //左转时朝向顺序
int a[100][100]; //格子
void change(char *s,int n,char *ch) //改变方向
{
int i;
for(i=0;i<n;i++)
{
if(s[i]==*ch) break;
}
*ch=s[((i+1)%n)];
}
void go(char ch,int *x,int *y) //蚂蚁移动
{
if(ch=='U') (*x)--;
if(ch=='R') (*y)++;
if(ch=='L') (*y)--;
if(ch=='D') (*x)++;
}
int main()
{
int m,n;
scanf("%d%d",&m,&n);
for(int i=0;i<m;i++)
for(int j=0;j<n;j++)
scanf("%d",&a[i][j]);
int x,y,k;
char s;
scanf("%d %d %c %d",&x,&y,&s,&k);
while(k--) //走的次数
{
if(a[x][y]) //蚂蚁在黑格
{
change(r,4,&s); //改变一下方向
a[x][y]=!a[x][y]; //格子变色,在改变方向之后
go(s,&x,&y); //移动
}
else
{
change(l,4,&s);
a[x][y]=!a[x][y];
go(s,&x,&y);
}
}
printf("%d %d",x,y);
return 0;
}
0.0分
0 人评分
C语言程序设计教程(第三版)课后习题6.10 (C语言代码)浏览:1058 |
C语言程序设计教程(第三版)课后习题6.5 (C语言代码)浏览:633 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:660 |
C语言程序设计教程(第三版)课后习题7.2 (C语言代码)浏览:542 |
DNA (C语言代码)浏览:540 |
母牛的故事 (C语言代码)浏览:551 |
C语言程序设计教程(第三版)课后习题1.5 (C语言代码)浏览:407 |
理财计划 (C语言代码)浏览:468 |
输入输出格式练习 (C语言代码)浏览:752 |
C语言程序设计教程(第三版)课后习题8.2 (C语言代码)浏览:1034 |