usaco 3.3 range 2008.11.7
状态定义:G[i][j]为以(i,j)为左上角顶点的正方形的最大边长。
边界条件:G[i][j]为初始读入的矩阵。
状态转移方程:G[i][j]=min{ G[i+1][j] , G[i][j+1] ,G[i+1][j+1] } + 1;
解析: G[i+1][j] ,G[i][j+1] , G[i+1][j+1]分别为(i,j)向下、向右、向右下一格的状况。在(n-1,n-1)当且仅当三者都为1的时候,正方形才能扩充。从最右下向上,依次扩充即可。
本文介绍了一个用于USACO竞赛中的范围查询问题的动态规划算法。该算法通过定义状态G[i][j]为以(i,j)为左上角顶点的正方形最大边长,并利用状态转移方程G[i][j]=min{G[i+1][j],G[i][j+1],G[i+1][j+1]}
833

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



