P4973 毒瘤之神奇进制
题目背景
hsl2363 正在造计算机。
题目描述
hsl2363 发现计算机非常好玩,他打算自己造一台,造好之后 zrz_orz 来了,hsl2363 告诉他:
“我的计算机是‘**$X$-\* 进制**’的,我很想知道你到底有多菜,所以问问你这几个数换算成十进制之后是多少。”
“**$X$-\* 进制**”表示的数字可以由 ASCII 可见字符(不包括 ASCII 代码小于等于 $48$ 的字符)组成。令“**$X$-\* 进制**”$s$ 长度为 $n$,位数从右到左为 $0$ 到 $n - 1$,则它表示这个数第 $i$ 位的 ASCII 代码减去 `0` 的 ASCII 代码(即 $48$),再乘以 $X$ 的 $i$ 次方的总乘积。也就是说,
$$s=\prod \limits_{i=0} \limits^{n-1} (X^i\cdot (f(s_i)-f('0')))$$
其中 $f('x')$ 表示字符 `x` 的 ASCII 代码值。
下面是一个例子:
若 $X=3$,$s=$`2363`,
则有
$\begin{aligned}
s&= f('2') \times 3^3 \times f('3') \times 3 ^ 2 \times f('6') \times 3 ^ 1 \times f('3') \times 3 ^ 0 \\
&= 2 \times 3^3 \times 3 \times 3 ^ 2 \times 6 \times 3 ^ 1 \times 3 \times 3 ^ 0\\
&= 78732
\end{aligned}
$
zrz_orz 觉得太难了,把问题抛给了你。现在有 $Q$ 个用“$X$-\* 进制”表示的数字(不同数字的 $X$ 可能不同),你需要求出它们的十进制表示。
因为答案可能很大,请输出答案的长度。
输入格式
第一行一个整数 $Q$。
接下来 $Q$ 行,第 $i$ 行一个整数 $X_i$ 和一个字符串 $s_i$,表示第 $i$ 个数字为“$X_i$-\* 进制”,在该进制下的表示为 $s_i$。
输出格式
共 $Q$ 行。
第 $i$ 行一个整数,代表第 $i$ 个数字在十进制表示下的长度。
说明/提示
**【数据范围】**
对于 $100\%$ 的数据,$1 \le Q \le 100, 1\le X_i=|s_i|-1 \le 10^5$。
ASCII 可见字符(不包括 ASCII 代码小于等于 $48$ 的字符)包含以下字符(按 ASCII 代码升序排序):
```text
123456789:;?
@ABCDEFGHIJKLMNO
PQRSTUVWXYZ[\]^_
`abcdefghijklmno
pqrstuvwxyz{|}~
```
**【提示】**
如果想要暴力,没有高精度是不可能的。