{"problem":{"name":"[语言月赛 202309] 扶苏迭代","description":{"content":"给定初始变量 $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","description_type":"Markdown"},"platform":"Luogu","limit":{"time_limit":1000,"memory_limit":524288},"difficulty":{"LuoguStyle":"P1"},"is_remote":true,"is_sync":true,"sync_url":null,"sign":"LGB3855"},"statements":[{"statement_type":"Markdown","content":"给定初始变量 $x_0$，请你按如下表达式迭代计算 $x_i$：\n\n$$x_i = \\left\\lfloor\\frac{x_{i - 1} + a}{a}\\right\\rfloor$$\n\n其中 $i > 0$。\n\n我们称这个迭代过程为扶苏迭代。可以证明，在经过若干次扶苏迭代以后，$x_i$ 的取值会稳定成为一个常数 $x_N$。也就是存在一个 $j \\geq 0$，使得对于所有 $k,h \\geq j$，$x_k = x_h$。\n\n你的任务是输出 $x_i$ 稳定到这个常数前的扶苏迭代过程。即输出 $x_0, x_1, x_2, \\dots x_j$。这里 $j$ 是最小的满足 $x_j = x_N$ 的数。\n\n可以证明，在给定的数据范围下，迭代次数不会很多。\n\n## Input\n\n**本题单个测试点内有多组测试数据**。的第一行是一个整数，表示测试点个数 $T$。\n\n对每组数据，只有一行两个整数，表示 $x_0$ 和 $a$。\n\n## Output\n\n对每组数据，输出一行若干个用空格隔开的整数，表示扶苏迭代过程变量 $x_i$ 的取值。\n\n[samples]\n\n## Background\n\n给定一个函数 $f(x)$，我们关注如何求出一个点 $x_0$ 使得当把 $x_0$ 带入函数式时，得到的函数值 $f(x_0)$ 为 $0$。即求出方程 $f(x) = 0$ 的一个根 $x_0$。\n\n牛顿迭代法就是这样一个方法。\n\n但是我不打算向您介绍牛顿迭代的具体方法，因为这和本题没什么关系。\n\n## Note\n\n### 数据规模与约定\n\n- 对 $30\\%$ 的数据，$T = 1$。\n- 另有 $30\\%$ 的数据，$x_0 = a$。\n- 对 $100\\%$ 的数据，$2 \\leq x_0, a \\leq 2 \\times 10^9$，$1 \\leq T \\leq 10^4$。","is_translate":false,"language":"English"}],"meta":{"iden":"LGB3855","tags":["2023","O2优化","循环结构","语言月赛"],"sample_group":[["2\n2 2\n3 2","2\n3 2"]],"created_at":"2026-03-03 11:09:25"}}