40求助
查看原帖
40求助
1486291
_S_M_Y_楼主2024/10/18 16:13
#include<bits/stdc++.h>
using namespace std;
long long n,m,s,h1,h2,a[10001][10001];
void h(long long z1,long long z2){
//	cout<<z1<<' '<<z2<<endl;
	if(a[z1+1][z2]==0&&z1<n) h(z1+1,z2);
	if(a[z1][z2+1]==0&&z2<m) h(z1,z2+1);
	if(z1==n&&z2==m) s++;
}
int main(){
	cin>>n>>m>>h1>>h2;
	a[h1][h2]=1;
	a[h1+1][h2+2]=1;
	a[h1+2][h2+1]=1;
	a[h1+2][h2-1]=1;
	a[h1+1][h2-2]=1;
	a[h1-1][h2-2]=1;
	a[h1-2][h2-1]=1;
	a[h1-2][h2+1]=1;
	a[h1-1][h2+2]=1;
	h(0,0);
	cout<<s;
	return 0;
}

本人是一个深资递归爱好者,如果真的不能用递归就算了......

2024/10/18 16:13
加载中...