1 条题解
信息
- ID
- 1664
- 时间
- 2000ms
- 内存
- 1024MiB
- 难度
- 10
- 标签
- 递交数
- 1
- 已通过
- 1
- 上传者
先允许队伍为空。
把每个人分到 A、B 看成在第一个带符号和中取 +Pi,−Pi,分到 C、D 则在第二个带符号和中取 +Pi,−Pi。作变量替换后,每个人的四种贡献可以分解为两个独立的二选一贡献,因此若 Q 表示把所有 Pi 加正负号后总和为零的方案数,允许空队的答案就是 Q2。正权值下 A 为空会强制 B 也为空,这样的方案有 Q 个;C、D 同理,二者不可能同时为空,故所求为 Q2−2Q。
Q 等于选出元素和为总力量一半的子集数。总和为奇数时 Q=0;否则用一维 0/1 背包倒序转移并取目标和处的计数,最后代入公式。
时间复杂度为 O(N∑Pi),空间复杂度为 O(∑Pi)。