社区讨论

记忆化写的,全WA,求助

P1002[NOIP 2002 普及组] 过河卒参与者 3已保存回复 17

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
17 条
当前快照
1 份
快照标识符
@lo1wxe49
此快照首次捕获于
2023/10/23 04:19
2 年前
此快照最后确认于
2023/11/03 04:47
2 年前
查看原帖
CPP
#include<bits/stdc++.h>

using namespace std;

const int maxN=8;

int dx[9]={0,-1,-2,-1,-1,1,2,2,1};
int dy[9]={0,-2,-1,1,2,2,1,-1,-1};
long long bx, by, mx, my, f[25][25];

long long dfs(int x,int y)
{
	if(f[x][y])
	{
	 	return f[x][y];
	}	
	if(x == 0 || y == 0)
	{
		return 1;
	}
	if(x < -2 || y < -2)
	{
		return 0;
	}
	for(int i = 0; i <= maxN; i++)
	{
		if(x == mx + dx[i] && y == my + dy[i])
		{
			return 0;
		} 
	}
	return f[x][y] = dfs(x - 1, y) + dfs(x, y - 1);
} 

int main()
{
	ios::sync_with_stdio(false);
	cin.tie(0),cout.tie(0);
	cin>>bx>>by>>mx>>my;
	cout<<dfs(bx, by);
    return 0;
}

回复

17 条回复,欢迎继续交流。

正在加载回复...