CF1166D Cute Sequences
题目描述
给定一个正整数 $m$,我们称一个正整数序列 $x_1, x_2, \dots, x_n$ 是 $m$-可爱($m$-cute)的,如果对于每一个满足 $2 \le i \le n$ 的下标 $i$,都存在一个正整数 $r_i$,使得 $1 \le r_i \le m$,并且 $x_i = x_{i-1} + x_{i-2} + \dots + x_1 + r_i$。
你将得到 $q$ 个询问,每个询问包含三个正整数 $a$、$b$ 和 $m$。对于每个询问,你需要判断是否存在一个 $m$-可爱序列,其首项为 $a$,末项为 $b$。如果存在这样的序列,你还需要给出一个示例。
输入格式
第一行包含一个整数 $q$($1 \le q \le 10^3$),表示询问的数量。
接下来的 $q$ 行,每行包含三个整数 $a$、$b$ 和 $m$($1 \le a, b, m \le 10^{14}$,$a \leq b$),描述一个询问。
输出格式
对于每个询问,如果不存在首项为 $a$、末项为 $b$ 的 $m$-可爱序列,输出 $-1$。
否则,输出一个整数 $k$($1 \le k \leq 50$),以及 $k$ 个整数 $x_1, x_2, \dots, x_k$($1 \le x_i \le 10^{14}$)。这些整数需满足 $x_1 = a$,$x_k = b$,且序列 $x_1, x_2, \dots, x_k$ 是 $m$-可爱序列。
可以证明,在题目给定的约束下,对于每个询问,要么不存在 $m$-可爱序列,要么存在一个长度不超过 $50$ 的 $m$-可爱序列。
如果存在多个满足条件的序列,你可以输出任意一个。
说明/提示
考虑样例。在第一个询问中,序列 $5, 6, 13, 26$ 是合法的,因为 $6 = 5 + \mathbf{\color{blue} 1}$,$13 = 6 + 5 + \mathbf{\color{blue} 2}$,$26 = 13 + 6 + 5 + \mathbf{\color{blue} 2}$,其中加粗的值都在 $1$ 到 $2$ 之间,所以该序列是 $2$-可爱序列。其它合法的序列,如 $5, 7, 13, 26$ 也是可以接受的。
在第二个询问中,唯一可能的 $1$-可爱序列以 $3$ 开头为 $3, 4, 8, 16, \dots$,其中不包含 $9$。
由 ChatGPT 4.1 翻译