求助,60分 #3#4错的
查看原帖
求助,60分 #3#4错的
779997
like_tis楼主2023/8/4 16:41
#include<bits/stdc++.h>
using namespace std;
int n,m,hx,hy,dx[]={-2,-1,1,2,2,1,-1,-2,0},dy[]={1,2,2,1,-1,-2,-2,-1,0};
long long dp[25][25];
bool hor[25][25];
bool check(int x,int y){
	return x>=1&&x<=n&&y>=1&&y<=m;
}
int main(){
	scanf("%d%d%d%d",&n,&m,&hx,&hy);
	n++;
	m++;
	hx++;
	hy++;
	for(int i=0;i<10;i++){
		if(check(hx+dx[i],hy+dy[i])){
			hor[hx+dx[i]][hy+dy[i]]=true;
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(!hor[i][j]){
				if(i==1||j==1){
					dp[i][j]=1;
				}
				else{
					dp[i][j]=dp[i-1][j]+dp[i][j-1];
				}
			}
		}
	}
	printf("%lld",dp[n][m]);
	return 0;
}
2023/8/4 16:41
加载中...