题解 CF1017B 【The Bits】

· · 题解

可以发现,若我们要得到一个新的 a 满足要求,必须要至少完成以下两种操作之一。

我们设 ax1y0。再设有 za|b=0 的位置,ka=1,b=0 的位置。

那么,将 a 中一个 0 填成 1x 种方案,反过来为 y 种。

所以我们可以将上面操作的方案数算出,分别是 kyzx

又因为某些情况同时包含了这两种操作,会重复计算,所以要减去。

答案就是 ky+zx-kz