求大佬记忆化一下
  • 板块学术版
  • 楼主梦回江南
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/9/29 22:44
  • 上次更新2023/11/4 05:20:35
查看原帖
求大佬记忆化一下
492676
梦回江南楼主2021/9/29 22:44

求大佬记忆化一下

#include<bits/stdc++.h>
using namespace std;
int n,m,p,q;
long long sum=1;
int h[25][25];
int zu(int x,int y){
	if(h[x][y]){
		return h[x][y];
	}
	if(x==n&&y==m){
		sum++;
		return 1;
	}
	if(x==p-1&&y==q-2){
		return 1;
	}
	if(x==p-2&&y==q-1){
		return 1;
	}
	if(x==p+1&&y==q-2){
		return 1;
	}
	if(x==p+2&&y==q-1){
		return 1;
	}
	if(x==p-2&&y==q+1){
		return 1;
	}
	if(x==p-1&&y==q+2){
		return 1;
	}
	if(x==p+1&&y==q+2){
		return 1;
	}
	if(x==p+2&&y==q+1){
		return 1;
	}
	if(x==p&&y==q){
		return 1;
	}
	if(x==n){
		return zu(x,y+1);
	}
	if(y==m){
		return zu(x+1,y);
	}
	h[x][y]=sum;
	return zu(x+1,y)+zu(x,y+1);
}
int main(){
	cin>>n>>m>>p>>q;
	zu(0,0);
	cout<<sum-1;
	return 0;
}

2021/9/29 22:44
加载中...