求助60分!WA#3#4
查看原帖
求助60分!WA#3#4
534589
S_Kuroko楼主2024/3/24 11:50
#include<bits/stdc++.h>
using namespace std;

long long a[30][30];

int main()
{
	long long ax,ay,mx,my;
	cin>>ax>>ay>>mx>>my;
	for(int i=0;i<=ax;i++)
	{
		a[i][0]=1;
	}
	for(int i=0;i<=ay;i++)
	{
		a[0][i]=1;
	}
	a[mx][my]=-1;
	a[mx-2][my-1]=-1;
	a[mx-2][my+1]=-1;
	a[mx-1][my+2]=-1;
	a[mx-1][my-2]=-1;
	a[mx+2][my-1]=-1;
	a[mx+2][my+1]=-1;
	a[mx+1][my+2]=-1;
	a[mx+1][my-2]=-1;
	
	for(int i=1;i<=ax;i++)
	{
		for(int j=1;j<=ay;j++)
		{
			if(a[i][j]==-1)
			{
				continue;
			}
			if(a[i-1][j]!=-1||a[i][j-1]!=-1)
			{
				a[i][j]=a[i-1][j]+a[i][j-1];
			}
			if(a[i-1][j]==-1&&a[i][j-1]!=-1)
			{
				a[i][j]=a[i][j-1];
			}
			if(a[i-1][j]!=-1&&a[i][j-1]==-1)
			{
				a[i][j]=a[i-1][j];
			}
			if(a[i-1][j]==-1&&a[i][j-1]==-1)
			{
				a[i][j]=0;
			}
		}
	}
	cout<<a[ax][ay]<<endl;
	return 0;
} 
2024/3/24 11:50
加载中...