40求助
查看原帖
40求助
1512108
QirErl楼主2024/12/1 22:10
#include<bits/stdc++.h>
using namespace std;
int n,m;
int dp[1005][1005];
int x[10005],y[10005];
bool pd(int a,int b){//判断点[a][b]是否能走 
	for(int l = 1;l <= m;l++){
		if(a == x[l]&&b == y[l]) return 0;
	}
	return 1;
}
int main(){
	cin >> n >> m;
	
	for(int i = 1;i <= m;i++) cin >> x[i] >> y[i];
	dp[1][1] = 1;
	for(int i = 1;i <= n;i++){
		for(int j = 1;j <= n;j++){
			if(pd(i,j)) dp[i][j] = dp[i][j] + dp[i - 1][j] + dp[i][j - 1];
			//cout<<dp[i][j]<<endl;
		}
	}
	cout<<dp[n][n];
	return 0;
}
2024/12/1 22:10
加载中...