求助!
  • 板块P1644 跳马问题
  • 楼主_SGH_
  • 当前回复1
  • 已保存回复1
  • 发布时间2024/12/15 11:21
  • 上次更新2024/12/15 15:09:01
查看原帖
求助!
901003
_SGH_楼主2024/12/15 11:21

没发现什么错啊55

#include<bits/stdc++.h>
using namespace std;
int dx[]={1,2,2,1};
int dy[]={2,1,-1,-2};
int vis[20][20];
int ans,n,m; 
void dfs(int x,int y){
	if(x == m && y == y){
		ans++;
		return;
	}
	for(int i = 0 ; i < n ; ++ i){
		int xx = x + dx[i];
		int yy = y + dy[i];
		if(xx >= 0 && yy >= 0 && yy <= n && xx <= m && !vis[xx][yy]){
			vis[xx][yy] = 1;
			dfs(xx,yy);
			vis[xx][yy] = 0;
		}
	}
	return;
	
}

int main(){
	
	cin >> m >> n;
	vis[0][0] = 1;
	dfs(0,0);
	cout << ans;
	return 0;	
}

2024/12/15 11:21
加载中...