CF2277D1 Number Operating (Easy Version)
题目描述
[Ariana Grande - stay](https://open.spotify.com/track/0QltPqkR4dnhbINyBOU5SY)
这是本题的简单版本。两个版本的区别在于,在本版本中,所有测试用例的 $r-l+1$ 之和不超过 $2\cdot 10^5$。
你有一个变量 $x$,初始时等于 $0$。在一次操作中,你可以执行以下两种操作之一:
- 操作 $1$:将 $2^k$ 加到 $x$ 上,其中 $k$ 是在本次操作之前紧邻连续执行操作 $1$ 的次数(特别地,如果这是第一次操作,或者前一次操作是操作 $2$,则 $k=0$);
- 操作 $2$:将 $x$ 减去 $1$(结果可以为负数)。
对于非负整数 $n$,令 $f(n)$ 为使 $x$ 等于 $n$ 所需的最少操作次数。可以证明这总是可能的。
给定两个整数 $l$ 和 $r$。求
$$\sum_{n=l}^{r} f(n)$$
由于答案可能非常大,请输出其对 $998\,244\,353$ 取模后的结果。
输入格式
每个测试包含多组测试用例。第一行包含测试用例数 $t$($1\le t\le 10^4$)。接下来是各测试用例的描述。
每个测试用例的唯一一行包含两个整数 $l$ 和 $r$($0\le l\le r\le 10^{18}$)。
保证所有测试用例的 $r-l+1$ 之和不超过 $2\cdot 10^5$。
输出格式
对于每个测试用例,输出一个整数,表示
$$\sum_{n=l}^{r} f(n)$$
对 $998\,244\,353$ 取模后的值。
说明/提示
在第一个测试用例中,$l=r=4$。初始时 $x=0$。一种达到 $x=4$ 的最优操作序列共需 $6$ 次操作,如下:
1. 执行操作 $1$,此时 $k=0$,所以 $x$ 变为 $0+2^0=1$。
2. 执行操作 $1$,此时 $k=1$,所以 $x$ 变为 $1+2^1=3$。
3. 执行操作 $1$,此时 $k=2$,所以 $x$ 变为 $3+2^2=7$。
4. 执行操作 $2$,所以 $x$ 变为 $7-1=6$。
5. 执行操作 $2$,所以 $x$ 变为 $6-1=5$。
6. 执行操作 $2$,所以 $x$ 变为 $5-1=4$。
可以证明,无法在 $5$ 次或更少的操作内达到 $x=4$。因此 $f(4)=6$,答案为 $6$。
在第二个测试用例中,$l=1$,$r=3$。有 $f(1)=1$,$f(2)=3$,$f(3)=2$。因此答案为 $1+3+2=6$。
在第三个测试用例中,$l=r=127$。我们可以连续执行操作 $1$ 七次,使 $x=2^7-1=127$。可以证明,无法在 $6$ 次或更少的操作内达到 $x=127$。因此 $f(127)=7$,答案为 $7$。