玄关
查看原帖
玄关
1004299
AlexSong楼主2024/1/28 11:31
#include<bits/stdc++.h>
const int MAXN=10005; 
using namespace std;
int j[4]={2,1,-2,-1};
int k[4]={1,2,1,2};
int n,m;
bool q(int x,int y)
{
	return!(x<0||y<0||x>n||y>m);
}
int main()
{
 	int a[20][20]={},tx,ty;
 	cin>>n>>m;
 	a[0][0]=1;
 	for(int j=0;j<=m;j++)
 	{
 		for(int i=0;i<=n;i++)
 		{
 			if(i==0&&j==0)
 			{
 				continue;
			}
			for(int l=0;l<4;l++)
			{
				tx=i-j[l],ty=j-k[l];
				if(!q(tx,ty))
				{
					continue;
				}
				a[i][j]+=a[tx][ty];
			} 
		}
	}
	cout<<a[n][m];
    return 0;
}
2024/1/28 11:31
加载中...