第9章 DP-坐标规则型动态规划.pptVIP

  • 19
  • 0
  • 约3.81千字
  • 约 24页
  • 2017-06-09 发布于湖北
  • 举报
坐标规则型动态规划 长沙市雅礼中学 朱全民 Robots 在一个n*m的棋盘内,一些格子里有垃圾要拾捡。现在有一个能捡垃圾的机器人从左上格子里出发,每次只能向右或者向下走。每次他到达一个点,就会自动把这个点内的垃圾拾掉。 问:最多能拾多少垃圾。在最多的情况下,有多少种拾垃圾方案? 数据范围:n=100,m=100 样例分析 最多能拾5块。有4种方法。 分析(1) 因为机器人只能向右或者向下走。符合无后效性原则。于是考虑动态规划。 设F(i,j)表示从(1,1)点开始走到(i,j)的时候,最多捡了多少垃圾。 F(i,j)=Max{f(i-1,j),f(i,j-1)}+c[i,j] 其中C[i,j]=1表示(i,j)点有垃圾。C[i,j]=0表示没有 1=i=n,1=j=m,决策2种 时间复杂度为O(n*m) 分析(2) 设G[i,j]表示在f[i,j]最大的时候,有多少种方案。 捡到f(i,j)的垃圾只能从两个方向来走,方案数累加即可。因此, g(i,j)=g[i-1,j]*k+g[i,j-1]*L 如果f[i-1,j]+c[i,j]=f[i,j],则K=1否则K=0。 如果f[i,j-1]+c[i,j]=f[i,j],则L=1否则L=0 时间复杂度O(n*m) ? 矩阵取数游戏 (NOIP2007) 对于一个给定的n*m的矩阵,矩阵中的每个元素aij为非负整

文档评论(0)

1亿VIP精品文档

相关文档