风暴尖叫者
就像是你可能是早年(这个实在翻译的有点诡异,百度上没有fifirst,就这样翻译了
一下)在学校中时你可能记得的那样,人类大约在至少7000年之前就发明了啤酒酿造工
艺。那几次一定是重要的?(我还是译意一下吧)啤酒总量的减少从那几次重要的消耗
和每年消耗的比例在未来千年内仍然并没有见减小的趋势。
为了庆祝这个事实(难道是我翻译错了?你庆祝个毛啊?),我们邀请你设计一个游
戏,看似与啤酒的发酵无关。这是非常有可能的,当然,在你成功地执行之后你可能
会觉得有点头大,就像你平常就喝多了一样。
这个游戏是在一个M*N的由不同型号的正方形瓷砖(也可能是地毯,棋子)矩形上玩
的。
游戏机制和动物行为
-
所有的动物都只能在方格上面移动。
每一头狼都只能向右侧相邻的一个方格移动,如果移动不合法(也就是说移动到头
了),则下次移动返回至本行最左侧方格(应该是翻译成行,他不可能是列)。
每一只羊都只能向下方相邻的一个方格移动,如果移动不合法,则下次移动到本列
最上方方格(他那个诡异的翻译写的是柱,应该是为了和行区分)。
-
如果一头狼和一头羊同时移动到了同一个方格上,那么狼会吃掉羊,并且其所在
方格会转变成为有动物尸体的土壤。
-
如果一只羊抵达一个长草的土地,那么羊会吃掉草,土地从长草的土地转变成正
常土地。
-
如果一匹狼在10轮操作中没有吃到羊,那么狼会饿死,其所在土地转化为有动物
尸体的土地(目测就是说如果一匹狼在距离上次吃到羊第十轮操作后仍然没有
吃到羊,那么不移动,直接将所在土地进行转化)。
-
如果一头羊在5轮操作中没有吃到草,那么羊会饿死,其所在土地转化为有动物
尸体的土地。
土地的类型以及转化
一共有三种的土地类型,在游戏进行过程当中,土地的类型是可能发生改变的。
-
正常的土地:在游戏开始后的三轮或土地变成正常的土地后三轮,正常的土地会变为草地(长草)。
-
草地:如果草被羊吃了,那么草地立刻转化为正常的土地,三轮之后重新转化成草地。
-
有动物尸体的土地:无论何时有动物死在任何类型土地上(也就意味着动物死过的土地类型也可以,但土地类型并不会改变,也就是一个土地可以重复死动物),该土地变为有动物尸体的土地。动物依然可以通过有动物尸体的土地,但是该土地永远不会长草(即此类型转化不可逆)。随着游戏的进行,有动物尸体的土地可能越来越多。
输入
第一行输入包含三个整数:T,N和M。( 1 ≤ T ≤ 100, 1 ≤ M, N ≤ 20),T代表总轮数,M和N分别代表方格的行和列。接下来的M行每行包含N个字符。
‘.‘表示正常的土地。
‘S‘表示有一只羊在上面。
’W’表示有一只狼在上面。
(不包含‘ ’)。
输出
输出M行,每行N个字符表示T轮过后的土地。如果有动物在土地上,输出它:
‘W’代表一匹狼。
‘S’代表一只羊。
否则,输出正常的土地:
‘.‘代表正常的土地。
’#‘代表草地。
‘*’代表有动物尸体的土地。
(不包含‘ ’)。
样例输入1
6 6 5
..S..
.....
.S...
.....
....W
.S...
样例输出1
##S##
#####
#####
#.###
W*.##
#S.##
样例输入2
14 3 3
S..
W..
...
样例输出2
.##
#*#
S##
样例输入3
2 3 1
S
.
.
样例输出3
.
.
S
翻译:Luo_Feng_Han
很久之前的一道题,当时没找到翻译,一直存在洛谷的博客上,现在转到博客园。