60分 第三四测试点tle求救 sos
查看原帖
60分 第三四测试点tle求救 sos
508674
朽年2642490018楼主2021/8/17 12:32
#include<stdio.h>
#include<stdlib.h>
int n,m,x,y,cnt=0;
void js(int i,int j);
int pd(int i,int j);
int main()
{
	scanf("%d%d%d%d",&n,&m,&x,&y);
	js(0,0);
	printf("%d",cnt);
	
} 
void js(int i,int j)
{
	if (i==n&&j==m)
	{
		cnt++;
		return;
	}
	else
	{
		if (pd(i+1,j)==1&&i+1<=n&&(i+1!=x||j!=y))//包含对边界、马以及马所控制的点的判断 
		js(i+1,j);
		if (pd(i,j+1)==1&&j+1<=m&&(i!=x||j+1!=y))
		js(i,j+1);
		if (pd(i+1,j)==0&&pd(i,j+1)==0)
		return;
		
	}
}
int pd(int i,int j)
{
	//下为判断该点是否可走 
	if ((i==x+2&&j==y+1)||(i==x+1&&j==y+2)||(i==x-1&&j==y+2)||(i==x-2&&j==y+1)||(i==x-2&&j==y-1)||(i==x-1&&j==y-2)||(i==x+1&&j==y-2)||(i==x+2&&j==y-1))
	return 0;
	else 
	return 1;
}
2021/8/17 12:32
加载中...