求助!
  • 板块学术版
  • 楼主QWQnfl_lk_ysny
  • 当前回复3
  • 已保存回复3
  • 发布时间2021/11/14 11:17
  • 上次更新2023/11/4 00:37:41
查看原帖
求助!
492009
QWQnfl_lk_ysny楼主2021/11/14 11:17

P1002 [NOIP2002 普及组] 过河卒

#include<bits/stdc++.h>
using namespace std;
long long f[25][25];
bool g[25][25];
int main() {
	int x1, y1, x2, y2; 
	scanf("%d %d", &x1, &y1);
	scanf("%d %d", &x2, &y2);
	g[x2][y2]=1;
	if(x2>1&&y2!=0)   g[x2-2][y2-1]=1;
	if(x2<19&&y2!=0)  g[x2+2][y2-1]=1;
	if(x2>1&&y2!=20)  g[x2-2][y2+1]=1;
	if(x2<19&&y2!=20) g[x2+2][y2+1]=1;
	if(x2!=0&&y2>1)   g[x2-1][y2-2]=1;
	if(x2!=0&&y2<19)  g[x2-1][y2+2]=1;
	if(x2!=20&&y2>1)  g[x2+1][y2-2]=1;
	if(x2!=20&&y2<19) g[x2+1][y2+2]=1;
	for(int i = 0; i <= x1; ++i) 
		for(int j = 0; j <= y1; ++j) 
			if(!g[i][j]) {
				if(i==0&&j==0)
					f[0][0]=1;
				else if(i==0&&j>0);
					f[0][j]=f[0][j-1];
				else if(i>0&&j==0);
					f[i][0]=f[i-1][0];
				else
					f[i][j]=f[i-1][j]+f[i][j-1];
			}
	printf("%lld\n",f[x1][y1]);
	return 0;
}

为什么编译出错??

2021/11/14 11:17
加载中...