X星的坦克战车很奇怪,它必须交替的穿越正能量辐射区和负能量辐射区才能正常运转,否则将报废。
某坦克需要从A区到B区去(A,B区本身是安全去,其它区都标了正号或负号分别表示正负能量辐射区。
例如:
A + - + -
- + - - +
- + + + -
+ - + - +
B + - + -
(坦克只能水平或垂直方向上移动到相邻的区。
数据格式要求:
输入第一行是一个整数n,表示方阵的大小,4<=n<100
接下来是n行,每行有n个数据,可能是A,B,+,-中的某一个,中间用空格分开。
A, B都只能出现一次。
输出一个整数,表示坦克从A到B的最少步数。如果没有方案则输出-1.
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define MAX 100
int w ;//方阵大小
int bx, by, ax, ay;//AB坐标
char map[MAX][MAX];//储存地图
int path[MAX][2];//储存路径
int min=0,a=1;//储存最小步数
int checkPath(int x,int y,int n)//检查是不是绕圈
{
for(int i=0;i<=n;i++)
{