T679602 [CFCOI-R3-T1] 位运算(bit)
题目背景
:::info[题目信息]
- 出题人:[Hamburger999](https://www.luogu.com.cn/user/1045301)
- 数据:[Hamburger999](https://www.luogu.com.cn/user/1045301)
$\text{bit.cpp},1 \text{ s},512 \text{ MiB}$
:::
题目描述
询问 $q$ 次,每次给定 $n,k$,求:
$$
\sum_{x=1}^{2^n-1}\sum_{y=1}^{2^n-1} \Biggl \lfloor
\frac{\operatorname{popcount}(x \operatorname{and} y)+k}{\operatorname{popcount}(x \operatorname{or} y)} \Biggr\rfloor
$$
答案对 $998244353$ 取模。
其中 $\operatorname{and},\operatorname{or},\operatorname{popcount}$ 运算分别为按位与,按位或,二进制下 $1$ 的个数。
输入格式
第 $1$ 行,$1$ 个整数 $q$。
接下来 $q$ 行,每行 $2$ 个整数 $n,k$ 表示一组询问。
输出格式
对于每组询问输出 $1$ 行,$1$ 个整数表示答案。答案对 $998244353$ 取模。
说明/提示
对于 $100\%$ 的数据,$1 \le q \le 10^5,1 \le n \le 10^{12},0 \le k \le 1$。
本题共 $20$ 个测试点,每个测试点 $5$ 分,数据范围如下:
::cute-table{tuack}
| 测试点编号 | $q \le$ | $n \le$ | $k \le$ |
|:-:|:-:|:-:|:-:|
| $1$ | $10^5$ | $1$ | $1$ |
| $2 \sim 5$ | $3$ | $10$ | ^ |
| $6 \sim 8$ | $10^5$ | $10^6$ | $0$ |
| $9 \sim 11$ | ^ | $10^{12}$ | ^ |
| $12 \sim 14$ | ^ | $10^6$ | $1$ |
| $15 \sim 20$ | ^ | $10^{12}$ | ^ |