过河卒时间太长过不鸟,泪目(乌乌
  • 板块学术版
  • 楼主酒臭
  • 当前回复1
  • 已保存回复1
  • 发布时间2020/9/24 17:37
  • 上次更新2023/11/5 12:41:43
查看原帖
过河卒时间太长过不鸟,泪目(乌乌
209033
酒臭楼主2020/9/24 17:37

邦邦

#include <bits/stdc++.h>
using namespace std;
unsigned long long a[20][20],b[20][20],bx,by,cy,cx;
void spl(int x,int y){
	//if(x==bx&&y==by)return;
	if(x==bx+1||y==by+1)return;
	a[y][x]=a[y][x-1]+a[y-1][x];
	if(b[y][x]==1)a[y][x]=0;
	spl(x+1,y);
	spl(x,y+1);
};
int main()
{	
	std::ios::sync_with_stdio(false);
    std::cin.tie(0);
	cin>>bx>>by>>cx>>cy;
	for(int i=1;i<=by;i++){
		if(b[0][i]==0)a[i][0]=1;
	}
	for(int i=1;i<=bx;i++){
		if(b[0][i]==0)a[0][i]=1;
	}
	for(int i=cy-2;i<=cy+2;i++)
		for(int l=cx-2;l<=cx+2;l++){
			if(i==cy&&l==cx)
			b[i][l]=1;
			if(i==cy-1&&l==cx-2)
			b[i][l]=1;
			if(i==cy-1&&l==cx+2)
			b[i][l]=1;
			if(i==cy-2&&l==cx-1)
			b[i][l]=1;
			if(i==cy-2&&l==cx+1)
			b[i][l]=1;
			if(i==cy+1&&l==cx-2)
			b[i][l]=1;
			if(i==cy+1&&l==cx+2)
			b[i][l]=1;
			if(i==cy+2&&l==cx-1)
			b[i][l]=1;
			if(i==cy+2&&l==cx+1)
			b[i][l]=1;
	}
	spl(1,1);
	cout<<a[by][bx];
}
2020/9/24 17:37
加载中...