码迷,mamicode.com
首页 > 其他好文 > 详细

111

时间:2017-01-12 08:45:51      阅读:235      评论:0      收藏:0      [点我收藏+]

标签:bsp   while   div   turn   freopen   int   cpp   std   for   

#include <stdio.h>
int map[10][10];
int num[10][10];
int num1[10][10];
int N,min=99;
int x,y,x1,y1,x2,y2,x3,y3;
int ax[4]={0,1,0,-1};
int ay[4]={1,0,-1,0};

void dfs(int zx , int zy ,int zx1 , int zy1 ,int step)
{
	if(step==5)
	{
		return ;
	}
	for(int i=0;i<4;i++)
	{
		int tx,tx1,ty,ty1;
		tx=zx+ax[i];
		ty=zy+ay[i];
		tx1=zx1+ax[i];
		ty1=zy1+ay[i];
		if((tx>=0&&tx<N&&ty>=0&&ty<N)||(tx1>=0&&tx1<N&&ty1>=0&&ty1<N))
		{
			if((!map[tx][ty]&&(!num[tx][ty]))||(!map[tx1][ty1]&&(!num1[tx1][ty1])))
			{
				while((!map[tx][ty]&&(!num[tx][ty]))||(!map[tx1][ty1]&&(!num[tx][ty])))
				{
					if(!map[tx][ty]||!map[tx1][ty1])
					{

					}
				}
			}

			dfs(tx,ty,tx1,ty1,step+1);
		}
		
	}


}
int main()
{
	freopen("in.txt","r",stdin);
	scanf("%d",&N);
	for(int i=0;i<N;i++)
	{
		for(int j=0;j<N;j++)
		{
			scanf("%d",&map[i][j]);
			if(map[i][j]==2)
			{
				x=i;
				y=j;
				map[i][j]=0;
			}
			if(map[i][j]==3)
			{
				x1=i;
				y1=j;
				map[i][j]=0;
			}

			if(map[i][j]==4)
			{
				map[i][j]=0;
			}

			if(map[i][j]==6)
			{
				map[i][j]=0;
			}
		}
	}
	num[x][y]=1;
	num1[x1][y1]=1;
	
	dfs(x,y,x1,y1,0);
	printf("%d",min);
}

 

111

标签:bsp   while   div   turn   freopen   int   cpp   std   for   

原文地址:http://www.cnblogs.com/liunx1109/p/6274514.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!