B3855 [语言月赛 202309] 扶苏迭代
题目背景
给定一个函数 $f(x)$,我们关注如何求出一个点 $x_0$ 使得当把 $x_0$ 带入函数式时,得到的函数值 $f(x_0)$ 为 $0$。即求出方程 $f(x) = 0$ 的一个根 $x_0$。
牛顿迭代法就是这样一个方法。
但是我不打算向您介绍牛顿迭代的具体方法,因为这和本题没什么关系。
题目描述
给定初始变量 $x_0$,请你按如下表达式迭代计算 $x_i$:
$$x_i = \left\lfloor\frac{x_{i - 1} + a}{a}\right\rfloor$$
其中 $i > 0$。
我们称这个迭代过程为扶苏迭代。可以证明,在经过若干次扶苏迭代以后,$x_i$ 的取值会稳定成为一个常数 $x_N$。也就是存在一个 $j \geq 0$,使得对于所有 $k,h \geq j$,$x_k = x_h$。
你的任务是输出 $x_i$ 稳定到这个常数前的扶苏迭代过程。即输出 $x_0, x_1, x_2, \dots x_j$。这里 $j$ 是最小的满足 $x_j = x_N$ 的数。
可以证明,在给定的数据范围下,迭代次数不会很多。
输入格式
**本题单个测试点内有多组测试数据**。的第一行是一个整数,表示测试点个数 $T$。
对每组数据,只有一行两个整数,表示 $x_0$ 和 $a$。
输出格式
对每组数据,输出一行若干个用空格隔开的整数,表示扶苏迭代过程变量 $x_i$ 的取值。
说明/提示
### 数据规模与约定
- 对 $30\%$ 的数据,$T = 1$。
- 另有 $30\%$ 的数据,$x_0 = a$。
- 对 $100\%$ 的数据,$2 \leq x_0, a \leq 2 \times 10^9$,$1 \leq T \leq 10^4$。