S40402.4-2 解码信标

传统题 时间 1000 ms 内存 256 MiB 3 尝试 0 已通过 0

4-2 解码信标

解码信标

墙壁上的老旧终端屏幕上,滚动着一串奇怪的字符——不是二进制,不是十六进制,而是一种混合编码。陈叔用这种方式发送坐标,是因为Zero的监控系统只能识别标准数字,混合编码会被当成乱码过滤掉。

"他把坐标拆成了几个部分。"Echo飘到终端前,投影被屏幕的绿光照得发青,"一部分用一种进位规则表示纬度,另一部分用另一种进位规则表示经度。要读到真正的数字,必须先把它拆成熟悉的十份制,再重新打包成我们能读懂的格式。"

CC凑近屏幕,眉头皱成一团:"这些字母……A到Z,a到z,还有数字。他到底用了多少种符号?"

"62种。"你说,"0-9是10种,A-Z是26种,a-z又是26种。总共62个符号,代表62层进位。"

"这家伙。"CC说,"他咋个不直接用十份制?"

"因为Zero的监控会扫描标准数字。"Echo说,"但混合编码在Zero眼里只是一堆无意义的字符。"

你开始解码。先把第一种进位的字符串拆开——从最高位开始,每一位按它的权重累加,像把不同大小的砝码放到天平上。这需要用大数容器,因为结果可能非常庞大。累加完成后,再用反复分割法把结果重新打包成第二种进位——一次次除以目标基数,取余数,倒过来排列。

CC在旁边看着,忽然问:"你咋个晓得这么多?"

"你逼我学的。"

"我——"她顿了一下,嘴角微微动了一下,"算了。继续。"

屏幕上跳出了解码结果。一个坐标:北纬47.7,东经17.2。

"G-20矿区。"Echo说,"陈叔在那里。"


题目描述

给定 b1b_1 进制的大整数和 b2b_2,将其从 b1b_1 进制转换为 b2b_2 进制。

输入格式

b1,b2b_1, b_2。然后 b1b_1 进制的字符串。

输出格式

b2b_2 进制的字符串。

输入样例

2
10 2
16 2

输出样例

10 16
2 10000

2 00
2 0

提示

  • 先把 b1b_1 进制转成大整数(按位累加,注意进位)。
  • 再用短除法把大整数转成 b2b_2 进制(反复除以 b2b_2,取余数,倒排)。
  • 字符集:0-9, A-Z, a-z。

坐标解码后,矿区地图在屏幕上展开。红色和蓝色的光点交织在一起,像一张正在流血的网。红色是Zero的守卫部署,蓝色是反抗军的隐蔽点。

"要找出最近的一对跨色点。"Echo说,"如果某个隐蔽点和守卫的距离太近,那个隐蔽点就可能已经暴露了。"

"咋个找?"CC问,"一个个量?那要量到明年。"

"切地图。"你说。

在线编程 IDE

建议全屏模式获得最佳体验