萌新求调
查看原帖
萌新求调
1175010
AlanWalker_1楼主2023/11/11 20:48

3、4过不了,开long long了

QAQ

#include<iostream>
#include<cstdio>
using namespace std;
int main(){
	long long a[40][40]={};
	bool b[40][40]={};
	int n,m,mx,my;
	cin>>n>>m>>mx>>my;
	n+=2;m+=2;mx+=2;my+=2 ;
	for(int i=2;i<=n;i++){
		for(int j=2;j<=m;j++){
			b[i][j]=1;
		}
	}
	b[mx+2][my+1]=0;
	b[mx+1][my+2]=0;
	b[mx-1][my+2]=0;
	b[mx-2][my+1]=0;
	b[mx-2][my-1]=0;
	b[mx-1][my-2]=0;
	b[mx+1][my-2]=0;
	b[mx+2][my-1]=0;
	b[mx][my]=0;
	for(int i=2;i<=n;i++){
		if(b[i][2]){
			a[i][2]=1;
		}else{
			a[i][2]=0;
		}
		
	}
	for(int j=2;j<=m;j++){
		if(b[2][j]){
			a[2][j]=1;
		}else{
			a[2][j]=0;
		}
	}
	for(int i=3;i<=n;i++){
		for(int j=3;j<=m;j++){
			if(b[i][j]){
				a[i][j]=a[i-1][j]+a[i][j-1];	
			}else{
				a[i][j]=0;
			}
			
		}
	}
	cout<<a[n][m];
	return 0;
}
2023/11/11 20:48
加载中...