A4912. 进制转换
编程题
普及-
知识点
题目描述
$N$ 进制数指的是逢 $N$ 进⼀的计数制。例如,⼈们日常⽣活中⼤多使用⼗进制计数,而计算机底层则⼀般使用二进制。除此之外,⼋进制和⼗六进制在⼀些场合也是常⽤的计数制(⼗六进制中,⼀般使用字母A 至F表⽰⼗⾄⼗五;本题中,⼗⼀进制到⼗五进制也是类似的)。
在本题中,我们将给出 $N$ 个不同进制的数。你需要分别把它们转换成⼗进制数。
在本题中,我们将给出 $N$ 个不同进制的数。你需要分别把它们转换成⼗进制数。
输入格式
输⼊的第⼀⾏为⼀个⼗进制表示的整数 $N$。接下来 $N$ ⾏,每⾏⼀个整数K,随后是⼀个空格,紧接着是⼀个 $K$ 进制数,表示需要转换的数。保证所有 $K$ 进制数均由数字和⼤写字母组成,且不以 $0$ 开头 。保证 $K$ 进制数合法。
保证 $N ≤ 1000$;保证 $2 ≤ K ≤ 16$。
保证所有 $K$ 进制数的位数不超过 $9$。
保证 $N ≤ 1000$;保证 $2 ≤ K ≤ 16$。
保证所有 $K$ 进制数的位数不超过 $9$。
输出格式
输出 $N$ 行,每⼀个十进制数,表⽰对应 $K$ 进制数的十进制数值。
输入输出样例
输入 #1
2 8 1362 16 3F0
输出 #1
754 1008
输入 #2
2 2 11011 10 123456789
输出 #2
27 123456789
说明/提示
对于任意⼀个 $L$ 位 $K$ 进制数,假设其最右边的数位为第 $0$ 位,最左边的数位为第 $L - 1$ 位,我们只需要将其第i位的数码乘以权值 $K
^i$,再将每位的结果相加,即可得到原K进制数对应的⼗进制数。下⾯是两个例⼦:
$1.$八进制数 $1362$ 对应的⼗进制数为 $1 × 8^3+3 × 8^2+6 × 8^1+2 × 8^0= 754$;
$2.$十六进制数 $3F0$ 对应的⼗进制数为 $3 × 16^2+15 × 16^1+ 0 ×16^0= 1008$
^i$,再将每位的结果相加,即可得到原K进制数对应的⼗进制数。下⾯是两个例⼦:
$1.$八进制数 $1362$ 对应的⼗进制数为 $1 × 8^3+3 × 8^2+6 × 8^1+2 × 8^0= 754$;
$2.$十六进制数 $3F0$ 对应的⼗进制数为 $3 × 16^2+15 × 16^1+ 0 ×16^0= 1008$