P13582 [NWRRC 2023] Based Zeros
题目描述
Barbara 一直以来都知道如何用十进制(以 $10$ 为底)表示整数,使用的数字有 $0, 1, 2, \ldots, 9$。最近她了解到,对于任意整数底数 $b \ge 2$,她也可以用 $b$ 进制表示整数,使用的数字为 $0$ 到 $b-1$。
Barbara 最喜欢的数字是 $0$。幸运的是,在所有进制中,$0$ 的写法都是一样的。
今天,Barbara 正在玩一个正整数 $n$。现在她想知道:在表示 $n$ 的所有进制中,在哪些进制下 $n$ 的表示中包含最多个 $0$?请你帮她找出所有这样的进制。
输入格式
每组测试数据包含多个测试用例。第一行包含一个整数 $t$($1 \le t \le 1000$),表示测试用例的数量。
接下来每个测试用例占一行,每行包含一个正整数 $n$($2 \le n \le 10^{18}$)。
输出格式
对于每个测试用例,第一行输出两个整数 $k$ 和 $m$,分别表示在所有进制下 $n$ 的表示中最多有 $k$ 个 $0$,以及有 $m$ 个这样的进制。
第二行输出 $m$ 个整数 $b_1, b_2, \ldots, b_m$,表示所有满足条件的进制,按递增顺序输出($2 \le b_1 < b_2 < \cdots < b_m \le n$)。
说明/提示
以下是样例测试用例中,$n$ 的表示包含最多 $0$ 的进制:
- $11 = \mathtt{1011}_2 = \mathtt{102}_3 = \mathtt{10}_{11}$(有一个 $0$);
- $1007 = \mathtt{1101022}_3 = \mathtt{1007}_{10}$(有两个 $0$);
- $239 = \mathtt{11101111}_2 = \mathtt{1035}_6 = \mathtt{10E}_{15} = \mathtt{10}_{239}$(有一个 $0$)。
在 $239 = \mathtt{10E}_{15}$ 的表示中,$\mathtt{E}$ 代表值为 $14$ 的数字。
由 ChatGPT 4.1 翻译