西安网站设计,怎么自己建立一个网站后台,linode搭建wordpress,网站创建流程包括哪些步骤X星的坦克战车很奇怪#xff0c;它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转#xff0c;否则将报废。某坦克需要从A区到B区去(A#xff0c;B区本身是安全区#xff0c;没有正能量或负能量特征)#xff0c;怎样走才能路径最短#xff1f;已知的地图是一个…X星的坦克战车很奇怪它必须交替地穿越正能量辐射区和负能量辐射区才能保持正常运转否则将报废。某坦克需要从A区到B区去(AB区本身是安全区没有正能量或负能量特征)怎样走才能路径最短已知的地图是一个方阵上面用字母标出了AB区其它区都标了正号或负号分别表示正负能量辐射区。例如A - -- - - - - - - B - -坦克车只能水平或垂直方向上移动到相邻的区。数据格式要求输入第一行是一个整数n表示方阵的大小 4n100接下来是n行每行有n个数据可能是AB-中的某一个中间用空格分开。AB都只出现一次。要求输出一个整数表示坦克从A区到B区的最少移动步数。如果没有方案则输出-1例如用户输入5A - -- - - - - - - B - -则程序应该输出10资源约定峰值内存消耗 512MCPU消耗 1000ms请严格按要求输出不要画蛇添足地打印类似“请您输入...” 的多余内容。所有代码放在同一个源文件中调试通过后拷贝提交该源码。注意: main函数需要返回0注意: 只使用ANSI C/ANSI C 标准不要调用依赖于编译环境或操作系统的特殊函数。注意: 所有依赖的函数必须明确地在源文件中 #include 不能通过工程设置而省略常用头文件。提交时注意选择所期望的编译器类型。剪枝条件为判断是否出界以及搜索到下一位置的符号是否与当前位置符号相反。。#include#includeint flag[105][105];char map[105][105];int n;int dir[4][2]{{1,0},{0,1},{-1,0},{0,-1}};int min130;int check(int x,int y,int sx,int sy){if(sx0 || sxn || sy0 || syn || (map[x][y]map[sx][sy])) //判断下一位置是否出界以及符号是否相反。return 1;return 0;}void dfs(int x,int y,int count){int i;if(map[x][y]B){if(countmincount;return;}for(i0;i4;i){int sxxdir[i][0];int syydir[i][1];if(!flag[sx][sy] !check(x,y,sx,sy)){flag[sx][sy]1;dfs(sx,sy,count1);flag[sx][sy]0;}}}int main(){int i,j;int x,y;memset(flag,0,sizeof(flag));scanf(%d,n);for(i0;ifor(j0;j{scanf(%*c%c,map[i][j]);if(map[i][j]A){xi;yj;}}dfs(x,y,0);if(min130)printf(-1\n);elseprintf(%d\n,min);return 0;}