T618282 [语言月赛 202506] 数字转转转
题目描述
有一个“数字转转转”游戏,它的规则是这样的:
初始时给定一个正整数 $x$,我们可以把它每一位数字加起来,变成一个新的数。我们把这样变化一轮的过程,叫做一次“数字转转转”操作。
比如,如果初始时给定的 $x$ 是 $375$,那么:
- “数字转转转”一次,会把 $375$ 变成 $3 + 7 + 5 = 15$;
- “数字转转转”二次,会把 $15$ 变成 $1 + 5 = 6$;
- “数字转转转”三次,会把 $6$ 变成 $6 = 6$。
现在,有 $n$ 个数,从 $1$ 到 $n$,每个数要做很多次“数字转转转”。请你帮忙算出,每个数在变化之后,最后变成了多少。
输入格式
输入共两行。
第一行一个整数 $n$,表示你要处理 $1 \sim n$ 这 $n$ 个数;
第二行 $n$ 个整数 $a_1, a_2, \cdots, a_n$,第 $i$ 个表示数字 $i$ 要做多少次“数字转转转”。
输出格式
输出一行 $n$ 个整数,第 $i$ 个表示数字 $i$ 做 $a_i$ 次“数字转转转”后得到的结果。
说明/提示
### 样例 1 解释
- 对于前 $1 \sim 9$,无论做多少次“数字转转转”,它们始终都是它们本身;
- 对于 $10$,其做第 $1$ 次“数字转转转”后变为 $1 + 0 = 1$,第二次后变为 $1 = 1$;
- 对于 $11$,其做第 $1$ 次“数字转转转”后变为 $1 + 1 = 2$。
### 数据规模与约定
本题共 $10$ 个测试点。对于 $100\%$ 的数据,$1 \leq n \leq 10^5$,$1 \leq a_i \leq 10^9$;
| 测试点编号 | $n$ | $a_i$ |
| :----------: | :----------: | :----------: |
| $1$ | $\leq 10$ | $\leq 100$ |
| $2, 3$ | $\leq 100$ | $\leq 100$ |
| $4, 5$ | $\leq 10^5$ | $= 1$ |
| $6, 7$ | $\leq 10^3$ | $\leq 10^3$ |
| $8 \sim 10$ | $\leq 10^5$ | $\leq 10^9$ |