题面
样例
2 3
1 0 1
0 1 1
3
分析
考虑正着限制最大的数不超过一半不好做,那我们可以反着来。
令 dp[i][j][k]dp[i][j][k]dp[i][j][k] 为第 iii 行,此列指定数 pointpointpoint 数量为 jjj 个,选的非指定数的个数为 kkk 的方案数。
则一共有三种情况
Case 1:Case\ 1:Case 1: dp[i][j][k]=dp[i−1][j][k]dp[i][j][k] = dp[i - 1][j][k]dp[i][j][k]=dp[i−1][j][k] (此列不选数字)
Case 2:dp[i][j][k]=dp[i][j][k]+dp[i−1][j][k−1]∗(pre[i]−a[i][point])Case\ 2:dp[i][j][k] = dp[i][j][k] + dp[i - 1][j][k - 1] * (pre[i] - a[i][point])Case 2:dp[i][j][k]=dp[i][j][k]+dp[i−