60分求助!
查看原帖
60分求助!
717437
paulpao楼主2023/5/30 21:42
#include<iostream>
using namespace std;
int main(){
	long long map[22][22]={},x[22][22]={},hx,hy,mx,my;
	cin>>mx>>my>>hx>>hy;
	hx++;
	hy++;
	mx++;
	my++;
	int hxx[8]={2,2,-2,-2,1,1,-1,-1};
	int hyy[8]={1,-1,1,-1,2,-2,2,-2};	
	for(int i=1;i<=21;i++){
		map[i][1]=1;
		map[1][i]=1;
	} 
	for(int i=0;i<=7;i++){
		if(hx+hxx[i]>=1&&hx+hxx[i]<=mx&&hy+hyy[i]>=1&&hy+hyy[i]<=my){
			x[hx+hxx[i]][hy+hyy[i]]=1;
			map[hx+hxx[i]][hy+hyy[i]]=0;
		} 		
	}
	x[hx][hy]=1;
	map[hx][hy]=0;
	for(int i=2;i<=mx;i++){
		for(int j=2;j<=my;j++){
			if(x[i][j]!=1){
				map[i][j]=map[i-1][j]+map[i][j-1];
			}
		}
	}
	cout<<map[mx][my];
	return 0;
} 

希望可以指出 错误,而不是单纯的AC代码

2023/5/30 21:42
加载中...