为什么样例输出10
查看原帖
为什么样例输出10
962598
BennyT楼主2023/10/17 21:49
#include<iostream>
using namespace std;
int a[30][30],n,m,x,y,f[8][2]={{-1,-2},{-1,2},{1,-2},{1,2},{-2,-1},{-2,1},{2,-1},{2,1}},vis[30][30];
int main(){
	cin >> n >> m >> x >> y;
	for(int i=0;i<8;i++) vis[x+f[i][0]][y+f[i][1]]=1;
	a[0][0]=1;
	for(int i=1;i<=n;i++) a[i][0]=a[i-1][0];
	for(int i=1;i<=m;i++) a[0][i]=a[0][i-1];
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			if(!vis[i-1][j]) a[i][j]+=a[i-1][j];
			if(!vis[i][j-1]) a[i][j]+=a[i][j-1];
		}
	}
	cout << a[n][m];
	return 0;
}
2023/10/17 21:49
加载中...