Start: Nov, 23, 2018 00:00:00
2018年秋季学期程序设计基础(C语言)第二次考试(补题)
End: Dec, 22, 2018 00:00:00
Time elapsed:
Time remaining:

三潭映月 2511

Time Limit:  1 s      Memory Limit:   256 MB
Submission:104     AC:24     Score:5

Description

       中秋夜,西子湖畔游客熙来攘往,或赏月赏景,或与家人朋友散步,抑或是像kk一样专门在这一天的晚上来看三潭映月。

       三潭映月中有三座石塔,塔身都有五个圆圆的洞口,从一个洞口望去,便可以一管而窥青天,所以,每年中秋,人们总是在石塔里点起火,再在圆洞上蒙上薄薄的白纸。霎时,皓月满空,火光熊熊,透过白纸,十五个白玉盘投印在湖面上,宛若十五个月亮漂在水面上,再加上原本月亮的倒影,十六个月亮凌然于碧水之上!

 

(from  http://dajia.qq.com/original/beauty/pxl20171217.html)

       “月色真美……

       受此景吸引,kk决定泛舟湖上,从这片漂满“月亮“的湖上穿过去并到达对岸,同时,kk也不想让船撞上”月亮“,那么kk能顺利到达彼岸吗?

假设湖面是一个n*m的矩阵,kk的初始坐标固定为(00),kk的目标地点固定为(n-1,m-1)。kk的船只能向上、向下、向左或向右移动,船也不能移动到湖以外的地方,kk从起点出发时可以选择向右走或者向下走。此外,kk是一个做事有条理的人,如果他向右走碰到“月亮”或者湖的边界时会把船的方向转为向下,向下走碰到“月亮”或者湖的边界时会把船的方向转为向左,向左走碰到“月亮”或者湖的边界时会把船的方向转为向上,向上走碰到“月亮”或者湖的边界时会把船的方向转为向右。(如果转向后依旧碰到“月亮”或者湖的边界,那么继续转向)

Input


       多组输入。

       第一行为两个正整数nm,分别代表湖的竖直长度和水平长度;接下来的n行,每行有m个数字,只包含‘1’、‘0’、‘5’、‘6’这四种数字,’1’代表湖水,‘0’代表月亮,‘5’代表kk的初始坐标,‘6’代表kk的目标地点。

       2<=n<=50  2<=m<=50


Output

       如果kk能顺利到达对岸,就输出“Huohuohuo,否则输出”Zenmefeisi”

Samples

input
7 7 5010110 1110110 1101011 1101010 1101110 0101010 0111116
output
Zenmefeisi
input
10 10 5111111110 1111111110 1101111110 0111111011 1011111111 0111111111 0111110111 1011111111 1110111101 1101011016
output
Huohuohuo

Hint

       对于第二组样例,kk的移动路径为(0,0)->(0,8)->(7,8)->(7,2)->(3,2)->(3,6)->(5,6)->(5,1)->(5,1)->(5,9)->(9,9),最终能到达目的地。

       即将出发之际,kk发现自己无法判断是否能顺利到达对岸,于是在纸上画了一个2*2的矩阵来模拟湖面上的情况,矩阵如下:

50

16

       kk模拟了一下自己的行动路线,在移动或改变方向了9次后,发现自己还没有走出去,他意识到自己已经不论如何都到不了目的地了。(除了目的地之外,kk最多只有两个地方能走;kk不论初始是向右走还是向下走,都只会在(0,0)(1,0)之间死循环