- P9's solution
P9's Solution
- 2025-9-4 21:59:16 @
想象一下,如果我们询问 ,会返回什么呢?设 :
- 如果 ,则 计入答案;
- 如果 ,则 不计入答案;
因此返回的结果 就是 中满足 的项的个数。也就是说, 中满足 的项的个数为 ,这一位对 的贡献是 。
同理,我们可以用 次交互分别出 个二进制位对 的贡献。我们把 个贡献相加,就可以算出 的值了。
#include <bits/stdc++.h>
#include "conversion.h"
using namespace std;
int main()
{
int n = start();
int s = 0;
for (int i = 1; i <= 8; i <<= 1)
s += i * (n - interact(15 - i));
stop(s);
return 0;
}