Skip to main content

LCP 47

题目巨长大上当

dp[i][j][k] = i 检查室中,使用j 方案 k人第一个出门有多少种 为开始,但推着推着就推成了跟k无关的公式

解题思路

要想使k第一个从最后一个门出来,我们势必要将中间的一些检查室用stack方案,而其他的保持queue方案,这样在经过这些栈后,k成了queue首从而可以第一个出门

这样就可以转换成背包问题,dp[i] 表示 i 大小的包能最大装多少价值的东西,而在这里 dp[i] 则表示 i 号人有多少种方案第一个出最后个门