超水模拟题,随便搞搞就行了
#include<cstdio>
using namespace std;
namespace
{
int m, n, q;
char s[11][11];
void solve()
{
int i = 0, j = --q, step = 0;
while (i >= 0 && i < m && j >= 0 && j < n)
{
char c = s[i][j];
s[i][j] = step++;
if (c > 'A')
{
if (c == 'E')
j++;
else if (c == 'W')
j--;
else if (c == 'N')
i--;
else
i++;
}
else
{
printf("%d step(s) before a loop of %d step(s)\n", c,
step - c - 1);
return;
}
}
printf("%d step(s) to exit\n", step);
}
}
int main()
{
while (scanf("%d %d %d", &m, &n, &q), m)
{
for (int i = 0; i < m; i++)
scanf("%s", s[i]);
solve();
}
return 0;
}