帮助(暴力)梳理一下容斥原理的部分
查看原帖
帮助(暴力)梳理一下容斥原理的部分
291976
quanjun楼主2022/8/21 10:34

对于第 ii 种金币,用 11 表示第 11 种金币的数量不合法,用 00 表示第 ii 种金币数量合法,比如:00000000 表示的就是 44 种金币数量都合法的情况数(这也是我们最终要求的部分),而 01000100 表示的是第 22 种金币数量不合法(大于了 did_i 枚),其它都合法的情况数。

然后我们按照

∣A1∨A2∨A3∨A4∣|A_1 \lor A_2 \lor A_3 \lor A_4|

(∣A1+A2+A3+A4∣)(|A_1 + A_2 + A_3 + A_4|)

−(∣A1∧A2∣+∣A1∧A3∣+∣A1∧A4∣+∣A2∧A3∣+∣A2∧A4∣+∣A3∧A4∣)- (|A_1 \land A_2| + |A_1 \land A_3| + |A_1 \land A_4| + |A_2 \land A_3| + |A_2 \land A_4| + |A_3 \land A_4|)

+(∣A2∧A3∧A4∣+∣A1∧A3∧A4∣+∣A1∧A2∧A4∣+∣A1∧A2∧A3∣)+ (|A_2 \land A_3 \land A_4| + |A_1 \land A_3 \land A_4| + |A_1 \land A_2 \land A_4| + |A_1 \land A_2 \land A_3|)

−∣A1∧A2∧A3∧A4∣- |A_1 \land A_2 \land A_3 \land A_4|

的顺序来推导:

顺序1111111011011100101110101001100001110110010101000011001000010000
+A1+ A_11111111100000000
+A2+ A_22222111111110000
+A3+ A_33322221122111100
+A4+ A_44332322132212110
−A1∧A2- A_1 \land A_23221322132212110
−A1∧A3- A_1 \land A_32121212132212110
−A1∧A4- A_1 \land A_41111111132212110
−A2∧A3- A_2 \land A_30011111121212110
−A2∧A4- A_2 \land A_4-1001111111112110
−A3∧A4- A_3 \land A_4-2001011101111110
+A2∧A3∧A4+ A_2 \land A_3 \land A_4-1001011111111110
+A1∧A3∧A4+ A_1 \land A_3 \land A_40001111111111110
+A1∧A2∧A4+ A_1 \land A_2 \land A_41011111111111110
+A1∧A2∧A3+ A_1 \land A_2 \land A_32111111111111110
−A1∧A2∧A3∧A4- A_1 \land A_2 \land A_3 \land A_41111111111111110

题解参照自 Doubeecat大佬的博客

2022/8/21 10:34
加载中...