CF1891D Suspicious logarithms
题目描述
设 $f(x)$ 为 $x$ 的二进制对数的向下取整值。换句话说,$f(x)$ 是满足 $2^y \leq x$ 的最大非负整数 $y$。
设 $g(x)$ 为以 $f(x)$ 为底的对数的向下取整值。换句话说,$g(x)$ 是满足 $f(x)^z \leq x$ 的最大非负整数 $z$。
你将得到 $q$ 个询问。第 $i$ 个询问包含两个整数 $l_i$ 和 $r_i$。该询问的答案是所有满足 $l_i \leq k \leq r_i$ 的整数 $k$ 的 $g(k)$ 之和。由于答案可能很大,请输出对 $10^9+7$ 取模后的结果。
输入格式
第一行包含一个整数 $q$,表示询问的数量($1 \leq q \leq 10^5$)。
接下来的 $q$ 行,每行包含两个整数 $l_i$ 和 $r_i$,表示第 $i$ 个询问的区间($4 \leq l_i \leq r_i \leq 10^{18}$)。
输出格式
对于每个询问,输出该询问的答案,对 $10^9+7$ 取模。
说明/提示
下表给出了 $1 \leq x \leq 8$ 时函数 $f(x)$ 和 $g(x)$ 的值。
\[
\begin{array}{c|cccccccc}
x & 1 & 2 & 3 & 4 & 5 & 6 & 7 & 8 \\
\hline
f(x) & 0 & 1 & 1 & 2 & 2 & 2 & 2 & 3 \\
g(x) & - & - & - & 2 & 2 & 2 & 2 & 1 \\
\end{array}
\]
由 ChatGPT 4.1 翻译