明显DP,包括括号11行。
方程:
fi,j=⎧⎩⎨⎪⎪⎪⎪⎪⎪⎪⎪0min⎧⎩⎨⎪⎪fi−1,jfi−1,j−1fi,j−1mapi,j=0mapi,j≠0
#define N 1010
int n,ans,ap[N][N],f[N][N];
int main()
{
n=read();
fr(i,1,read())
ap[read()][read()]=1;
fr(i,1,n)
fr(j,1,n)
if(!ap[i][j])
ans=max(ans,f[i][j]=min(min(f[i-1][j],f[i-1][j-1]),f[i][j-1])+1);
printf("%d\n",ans);
return 0;
}

本文介绍了一种使用动态规划算法解决特定地图上寻找路径的问题。通过定义状态转移方程,该算法能够在给定的地图中找到从任意一点出发的最大可行路径长度。文章提供了完整的C/C++代码实现,并详细解释了每一步的计算逻辑。
1448

被折叠的 条评论
为什么被折叠?



