A4912 | 进制转换
时间限制1s
内存限制128MB
通过 / 提交0/0
题目描述
$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$
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?