CSP-S2019 Emiya 家今天的饭(组合,DP)
\(n\times m\) 的矩阵。每行选至多一个数,不能不选数,\(2\times\) 选数最多的列选的数 不得 \(>\) 选数总数。\(n \le 100\),\(m \le 2000\)。
先求出没有不超过一半条件的答案。枚举超过的列,DP \(f[i][j]\) 表示前 \(i\) 行选了枚举列选数个数 \(-\) 非枚举列选数个数 \(= j\) 的方案数。减去 \(f[i][j > 0]\) 即可。中途可能 \(j < 0\),两倍数组大小。

浙公网安备 33010602011771号