CF2215B RReeppeettiittiioonn
题目描述
SS 是一个在 11 月 11 日(11/11)出生的女孩,非常喜欢重复。例如,她最喜欢的英文单词是 bookkeeper,最喜欢的字母是 W(double-u,double vé,或者你想叫什么都行),最喜欢的动物是猫(kitten!)和兔子(bunny!),最喜欢的编程语言是 C++,最喜欢的解析器是 LL(1),最喜欢的优化算法是分支限界法(BB),最喜欢的单位是毫米(mm),最喜欢的游戏是 LLLL,最喜欢的麻将和牌是七对子。她打算很快发布她的新歌《Silent-night Satellite》和《Siesta Stella》,因此想挑选一个“漂亮的”数字来装饰新歌的封面。
SS 以更高的视角观察这个世界,也就是说,她会同时在所有标准的进位制中考虑一个整数,从二进制数制开始。SS 将一个正整数 $n$ 称为 $ (b, p) $-tidy(其中 $ b,p\ge 2 $)当且仅当:
- 在 $b$ 进制表示下,$n$ 可以写作 $ \overline{d_{k\cdot p-1} d_{k\cdot p-2}\ldots d_1 d_0} $,其中 $k$ 是某个正整数,$0\le d_i < b$,并且对于每个 $0\le i < k$,都有 $d_{i\cdot p}=d_{i\cdot p+1}=\cdots=d_{(i+1)\cdot p-1}$。
例如,$2233$ 和 $3355$ 是 $ (10,2) $-tidy,$1111$ 既是 $ (10,2) $-tidy 也是 $ (10,4) $-tidy,$6\,737\,151=(66\textrm{CCFF})_{16}$ 是 $ (16,2) $-tidy。此外,SS 定义一个正整数 $n$ 的整洁度(tidiness)为满足 $n$ 是 $ (b, p) $-tidy 的有序对 $(b, p)$ 的个数。
SS 给定了你一个整数 $n$。你的任务是求出 $n$ 的整洁度。
输入格式
每组测试数据包含多个测试用例。第一行包含测试用例数 $t$($1 \le t \le 1000$)。
接下来的每个测试用例包含一行,一个正整数 $n$($1\le n\le 10^{12}$)。
保证所有测试用例中 $n$ 的总和不超过 $10^{12}$。
输出格式
对每个测试用例,输出一行一个整数,表示 $n$ 的整洁度。
说明/提示
在第三个测试用例中,$115={(55)}_{22}={(11)}_{114}$。因此,$115$ 的整洁度为 $2$。
在第四个测试用例中,$1111$ 分别是 $ (10, 2) $-tidy,$ (10, 4) $-tidy,$ (100, 2) $-tidy 和 $ (1110, 2) $-tidy。
由 ChatGPT 5 翻译