求助 样例输出是10
查看原帖
求助 样例输出是10
1047625
Lolitan楼主2024/9/7 11:13
#include<bits/stdc++.h>
#define ll long long 
using namespace std;
ll xs,ys,zx,zy;
ll maps[50][50],vis[50][50];
const int bjx[]={0, -2, -1, 1, 2, 2, 1, -1, -2};
const int bjy[]={0, 1, 2, 2, 1, -1, -2, -2, -1};
int main(){
	cin>>zx>>zy>>xs>>ys;
	vis[xs][ys]=1;
	maps[1][0]=1;
	zx+=1;zy+=1;ys+=1;xs+=1;
	for(int i=1;i<=8;i++)
		vis[xs+bjx[i]][ys+bjy[i]]=1;
	for(int i=1;i<=zx;i++){
		for(int j=1;j<=zy;j++){
			if(vis[i][j]==1){
				continue;
			}
			maps[i][j]=maps[i-1][j]+maps[i][j-1];
		}
	}
	cout<<maps[zx][zy];
	return 0;
}
看了眼题解怎么和我这么像()
但是看了半天依旧没找到计算的错误(悲)
2024/9/7 11:13
加载中...