1618:迷宫的阿狸续

题目描述
阿狸又被困在一个n*n的迷宫里,snoopy要去救他。
snoopy一开始在迷宫的左上角,即格子(1,1);而阿狸在迷宫右下角,即格子(n,n)。迷宫的各个格子只允许走几个方向,每走一步(格)就要喝掉一瓶益力多。 
现在给那个迷宫的地图,请问snoopy最少需要多少瓶益力多才能走到阿狸被困的地方?
输入解释
多组数据
每组先是一个n(1<=n<=100)
然后n行,每行n个数,描述地图:
数字0表示这个格子不能往任何方向走
数字1表示这个格子只能往上走
数字2表示这个格子只能往下走
数字3表示这个格子能往上或下走
数字4表示这个格子只能往左走
数字5表示这个格子能往上或左走
数字6表示这个格子能往下或左走
数字7表示这个格子能往上、下或左走
数字8表示这个格子只能往右走
数字9表示这个格子能往上或右走
数字10表示这个格子能往下或右走
数字11表示这个格子能往上、下或右走
数字12表示这个格子能往左或右走
数字13表示这个格子能往上、左或右走
数字14表示这个格子能往下、左或右走
数字15表示这个格子能玩上、下、左或右走

输出解释
如果不能到达输出-1,否则输出最少需要多少瓶益力多数
输入样例
3
8 15 0
2 12 0
8 14 1

2
0 0
0 0
输出样例
6
-1

该题目包含在题集 ACM赛制

题目来源 WABoss@FAFU

共提交 57

通过率 24.56%
时间上限 内存上限
1000 MS 128 MB

·

·

·

·

登陆或注册以提交代码