贪吃蛇

提交数: 61, 通过率: 36.07%, 平均分: 36.07

题目描述:

在一个50×50的地图上,我们要进行贪吃蛇的游戏。地图的左上角坐标为(1,1),蛇占据20个格子,分别从(25,11)到(25,30),蛇的头部位于(25,30)。蛇每一次可以选择向东(E)西(W)南(S)北(N)四个方向移动,但是不能原路回头,否则就撞到自己了,所以一开始蛇不可能往西移动。我们会给出一系列的移动操作,请你来模拟蛇的移动,直到蛇撞到自己,或移动到地图范围以外,或成功完成所有的移动。请根据实际情况输出,详见样例。

输入格式:

测试数据有多组。

每组的第一行输入一个整数n(n<100),表示要走n步。当n=0时,输入结束。

第二行输入一个包含n个字符的字符串表示每次的移动方向。

输出格式:

对于每组样例输出一行,格式为以下三种之一:

The worm ran into itself on move m.

The worm ran off the board on move m.

The worm successfully made all m moves.

m的大小由你的程序决定,我们规定第一次移动为move 1,详情参见样例。

样例输入:

18
NWWWWWWWWWWSESSSWS
20
SSSWWNENNNNNWWWWSSSS
30
EEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
13
SWWWWWWWWWNEE
0

样例输出:

The worm successfully made all 18 moves.
The worm ran into itself on move 9.
The worm ran off the board on move 21.
The worm successfully made all 13 moves.
时间限制: 1000ms
空间限制: 32MB