HDU 1176 免费馅饼

Posted jpphy0

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HDU 1176 免费馅饼相关的知识,希望对你有一定的参考价值。

链接

免费馅饼 - http://acm.hdu.edu.cn/showproblem.php?pid=1176

分析

  • 模型 - 横轴为位置,纵轴为时间;初始位置为红色,馅饼分布在网格中。
    • 动态问题静态化
    • 图中蓝色的馅饼接不到
    • 虚线范围内的都能接到在这里插入图片描述

  • 状态及分类
    • 设向右移动为1,向左移动为-1,不动为0,则 { … , 1 , … , − 1 , … , 0 , … ⏞ T 个 } \\{\\overbrace{…,1,…,-1,…,0,…}^{T个}\\} {110 T}为T秒末的状态
    • (T, X)表示T秒末在X位置上,这表示了一类状态
    • 末状态可以分为11类
  • 递推
    • 到哪里去?

      • 无法空间优化
      • 具体过程
        ( 0 , 5 ) ⇒ (0,5)\\Rightarrow (0,5) ( 1 , 4 ) 、 ( 1 , 5 ) 、 ( 1 , 6 ) ⇒ (1,4)、(1,5)、(1,6)\\Rightarrow (1,4)(1,5)(1,6) ( 2 , 3 ) 、 ( 2 , 4 ) 、 ( 2 , 5 ) 、 ( 2 , 6 ) 、 ( 2 , 7 ) ⇒ (2,3)、 (2,4)、(2,5)、(2,6)、(2,7)\\Rightarrow (2,3)(2,4)(2,5)(2,6)(2,7) ( 3 , 2 ) 、 ( 3 , 3 ) 、 ( 3 , 4 ) 、 ( 3 , 5 ) 、 ( 3 , 6 ) 、 ( 3 , 7 ) 、 ( 3 , 8 ) ⇒ (3,2)、 (3,3)、 (3,4)、(3,5)、(3,6)、(3,7)、(3,8)\\Rightarrow (3,2)(3,3)(3,4)(3,5)(3,6)(3,7)(3,8) ( 4 , 1 ) 、 ( 4 , 2 ) 、 ( 4 , 3 ) 、 ( 4 , 4 ) 、 ( 4 , 5 ) 、 ( 4 , 6 ) 、 ( 4 , 7 ) 、 ( 4 , 8 ) 、 ( 4 , 9 ) ⇒ (4,1)、(4,2)、 (4,3)、 (4,4)、(4,5)、(4,6)、(4,7)、(4,8)、(4,9)\\Rightarrow (4,1)(4,2)(4,3)(4,4)(4,5)(4,6)(4,7)(4,8)(4,9) ( 5 , 0 ) 、 ( 5 , 1 ) 、 ( 5 , 2 ) 、 ( 5 , 3 ) 、 ( 5 , 4 ) 、 ( 5 , 5 ) 、 ( 5 , 6 ) 、 ( 5 , 7 ) 、 ( 5 , 8 ) 、 ( 5 , 9 ) 、 ( 5 , 10 ) ⇒ (5,0)、(5,1)、(5,2)、 (5,3)、 (5,4)、(5,5)、(5,6)、(5,7)、(5,8)、(5,9)、(5,10)\\Rightarrow (5,0)(5,1)(5,2)(5,3)(5,4)(5,5)(5,6)(5,7)(5,8)(5,9)(5,10) … … ……
    • 从哪里来?

      • 空间可优化,但边界处理复杂
      • 顺序
        ( 0 , 5 ) ⇒ \\xcancel{(0,5)\\Rightarrow} (0,5) ( 1 , 4 ) 、 ( 1 , 5 ) 、 ( 1 , 6 ) ⇒ (1,4)、(1,5)、(1,6)\\Rightarrow (1,4)(1,5)(1,6) ( 2 , 3 ) 、 ( 2 , 4 ) 、 ( 2 , 5 ) 、 ( 2 , 6 ) 、 ( 2 , 7 ) ⇒ (2,3)、 (2,4)、(2,5)、(2,6)、(2,7)\\Rightarrow (2,3)(2,4)(2,5)(2,6)(2,7) ( 3 , 2 ) 、 ( 3 , 3 ) 、 ( 3 , 4 ) 、 ( 3 , 5 ) 、 ( 3 , 6 ) 、 ( 3 , 7 ) 、 ( 3 , 8 ) ⇒ (3,2)、 (3,3)、 (3,4)、(3,5)、(3,6)、(3,7)、(3,8)\\Rightarrow (3,2)(3,3)(3,4)(3,5)(3,6)(3,7)(3,8) ( 4 , 1 ) 、 ( 4 , 2 ) 、 ( 4 , 3 ) 、 ( 4 , 4 ) 、 ( 4 , 5 ) 、 ( 4 , 6 ) 、 ( 4 , 7 ) 、 ( 4 , 8 ) 、 ( 4 , 9 ) ⇒ (4,1)、(4,2)、 (4,3)、 (4,4)、(4,5)、(4,6)、(4,7)、(4,8)、(4,9)\\Rightarrow (4,1)(4,2)(4,3)(4,4)(4,5)(4,6)(4,7)(4,8)(4,9) ( 5 , 0 ) 、 ( 5 , 1 ) 、 ( 5 , 2 ) 、 ( 5 , 3 ) 、 ( 5 , 4 ) 、 ( 5 , 5 ) 、 ( 5 , 6 ) 、 ( 5 , 7 ) 、 ( 5 , 8 ) 、 ( 5 , 9 ) 、 ( 5 , 10 ) ⇒ (5,0)、(5,1)、(5,2)、 (5,3)、 (5,4)、(5,5)、(5,6)、(5,7)、(5,8)、(5,9)、(5,10)\\Rightarrow (5,0)(5,1)(5,2)(5,3)(5,4)(5,5)(5,6)(5,7)(5,8)(5,9)(5,10) … … ……

  • 末位置看成初始位置
    • 11个初始位置能对应11类末状态
    • 末位置在原初始位置的那些路径与原始问题的路径一一对应
    • 从哪里来?
      • 空间可优化,代码简洁
      • 递推过程
        ( 0 , 0 ) 、 ( 0 , 1 ) 、 ( 0 , 2 ) 、 ( 0 , 3 ) 、 ( 0 , 4 ) 、 ( 0 , 5 ) 、 ( 0 , 6 ) 、 ( 0 , 7 ) 、 ( 0 , 8 ) 、 ( 0 , 9 ) 、 ( 0 , 10 ) (0,0)、(0,1)、(0,2)、 (0,3)、 (0,4)、\\color{red}{(0,5)}\\color{black}{、(0,6)、(0,7)、(0,8)、(0,9)、(0,10)} (0,0)(0,1)(0,2)(0,3)(0,4)(0,5)(0,6)(0,7)(0,8)(0,9)(0,10) ( 1 , 0 ) 、 ( 1 , 1 ) 、 ( 1 , 2 ) 、 ( 1 , 3 ) 、 ( 1 , 4 ) 、 ( 1 , 5 ) 、 ( 1 , 6 ) 、 ( 1 , 7 ) 、 ( 1 , 8 ) 、 ( 1 , 9 ) 、 ( 1 , 10 ) ⇑ (1,0)、(1,1)、(1,2)、 (1,3)、 (1,4)、(1,5)、(1,6)、(1,7)、(1,8)、(1,9)、(1,10)\\Uparrow (1,0)(1,1)(1,2)(1,3)(1,4)(1,5)(1,6)(1,7)(1,8)(1,9)(1,10) ( 2 , 0 )

        以上是关于HDU 1176 免费馅饼的主要内容,如果未能解决你的问题,请参考以下文章

        HDU-1176 免费馅饼 ( DP )

        HDU1176:免费馅饼

        hdu-1176 免费馅饼

        Hdu 1176 免费馅饼

        HDU1176 免费馅饼 —— DP

        免费馅饼 HDU - 1176