U534853 被五步蛇咬了怎么办?

题目背景

(题目机制来自游戏《出院!青龙山之谜》 部分数据点为原游戏内容,其余为原创/根据游戏内容改编) 众所周知,五步蛇毒性极强,被咬后,走出5步就会毒发身亡,而你在前往中科城的路上,必须经过明知山中一片充满五步蛇的地区 诶~你有个主意,只要在走出五步之前再被咬一次,不就可以再走四步了吗?如此循环,或许有方法渡过难关!

题目描述

五步蛇之所以得名,是因为被其咬伤后至多只能走出4步,走出5步时将立刻死亡,但在弱智吧的世界,被另一条五步蛇咬伤将重置步数 已知五步蛇会主动攻击它四个方向的相邻格子,而且咬人后消失,原地变为空地。若没有被阻挡,你每一步可以往周围四个方向移动一格 在起点处,你不慎被五步蛇咬伤,你需要规划路线,希望在被毒死之前取得终点处的解药

输入格式

第一行为两个整数m和n,分别为地图长宽 接下来n行,每行m个数,表示地图构造,0为空地,1为障碍,5为五步蛇,数字之间用空格隔开,地图边界外不可行走 倒数第二行为四个整数,分别表示起点的横、纵坐标和终点的横、纵坐标,且最左上角的格子坐标记为(1,1) 最后一行为一个开关,输入0或1

输出格式

能取得解药输出1,反之输出0 若开关的值为1,在第二行输出此时取得解药的方法数 (按相同顺序触发相同的一些五步蛇视为1种解法,反之亦然;若不能取得解药,则输出0)

说明/提示

1<m,n<30 没有再次被咬且走出五步将直接死亡,此时来不及服用解药或被另一只五步蛇咬以续命(见样例2)