Loading

AT_arc144_d [ARC144D] AND OR Equation

比较好的一个题。

首先你看一下这个题目条件,其实是可以规约的,二进制下 \(1\) 的个数多的必然可以被 \(1\) 的个数少的拼凑出来,此时我们引出本题极为重要的一步:只需要确定 \(f_0\)\(f_{2^i}\) 即可确定整个序列。

根据上述,显然每次可以用一个 \(f_{0}\)\(f_{2^i}\) 让一个数的 \(1\) 的个数多 \(1\)

此时我们只需要看根据这些数能够组合而成的上界和下界即可。

此时考虑根据 \(f_0\) 的值看哪些 \(f_{2^i}\) 大于 \(f_0\) 和小于即可,发现两种 \(f_{2^i}\) 相加便可抵达上界和下界,其就是两个不等式方程,用组合数求解即可。

posted @ 2025-09-25 15:53  Alexande  阅读(8)  评论(0)    收藏  举报