题目描述
塔子哥拿到了一个数组,数组的元素的绝对值不超过 1,她想取一个非空子序列(在原数组中可以不连续),并计算该子序列的乘积。
塔子哥想知道,子序列乘积为 -1、0、1 的方案数分别有多少种?
题解
经典的数数题
先分别统计数组中 1、-1 和 0 的个数,记为 a、b 和 c。
对于乘积为负数的情况,需要选择奇数个 -1,其余的 1 和 -1 可以任意选择。因此,乘积为负数的方案数为:
$$\sum_{i=1, i \text{ is odd}}^b \binom{b}{i} \cdot 2^a
$$