题意
中文题:
题面
思路
d
p
[
i
]
[
j
]
[
k
]
表
示
截
止
到
第
i
个
时
,
已
经
使
用
j
个
,
且
到
i
已
经
连
续
k
个
dp[i][j][k] 表示截止到第i个时,已经使用j个,且到i已经连续k个
dp[i][j][k]表示截止到第i个时,已经使用j个,且到i已经连续k个
已
知
d
p
[
i
−
1
]
[
]
[
]
的
所
有
状
态
,
增
加
第
i
个
元
素
时
,
d
p
[
i
]
[
j
]
[
0
]
=
d
p
[
i
]
[
j
]
[
k
]
(
其
中
k
属
于
0
到
10
且
d
p
[
i
−
1
]
[
j
]
[
k
]
状
态
有
效
)
d
p
[
i
]
[
j
]
[
k
]
=
d
p
[
i
−
1
]
[
j
−
1
]
[
k
−
1
]
∗
(
i
−
1
)
已知dp[i-1][][]的所有状态,增加第i个元素时,\\dp[i][j][0]=dp[i][j][k](其中k属于0到10且dp[i-1][j][k]状态有效)\\dp[i][j][k] = dp[i-1][j-1][k-1]*(i-1)
已知dp[i−1][][]的所有状态,增加第i个元素时,dp[i][j][0]=dp[i][j][k](其中k属于0到10且dp[i−1][j][k]状态有效)dp[i][j][k]=dp[i−1][j−1][k−1]∗(i−1)
由于n很小,所以可以先把表打好然后直接输出。
有一个小技巧,无效状态对应的dp值为-1
HDU 6787 Chess 【2020 年百度之星·程序设计大赛 - 初赛三】
最新推荐文章于 2020-08-25 09:20:28 发布