1511: 火星人乘法

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

21世纪.人类宇航员第一次在火星表面登陆,发现了一些奇妙的图案,经科学家们的研究,猜想其中的某一部分可能为火星人计算两个数相乘的记录,且它们用的是18进制。 在这些图案和符号中,他们用类似ASCII来表示数字,具体如下: I代表 “1” N代表 “10” M代表 “100” H代表 “1000” R代表 “10000” P代表 “100000” K代表 “1000000” T代表 “10000000” 上面用“”包含的数字是18进制的数字,如N十M代表“110”(为方便起见,将字符间的加号省略,写为NM),相当于我们所用的十进制数342(342=18x18+18)。而我们的十进制数401,火星人写为: (401)10=1x(18)10x(18)10+4x(18)10+5x(1)10=(145)18=1x(100)18+4x(10)18+5x(1)18=IIIIINNNNM (先写低位后写高位) 现在使数字a与数字b相乘,火星人的方法是:先用I与b相乘,I在第一行的左边,右边为I与b的积,再用II与b相乘,第二行输出II及II与b的积,每次加倍,依次用IIII、 IIIIIIII等去乘b,直到当各行左边一列的数的和大于等于a为止。 例如: a=IIIIIIIIINN b=IIIIINNNNNN 过程如下: I* IIIIINNNNNN II IIIIIIIIIINNNNNNNNNNNN IIII* IINNNNNNNH IIIIIIII* IIIINNNNNNNNNNNNNNMM IIIIIIII* IIIIIIIINNNNNNNNNNMMMM IIIIIIIIIIIIIIII IIIIIIIINNNNNNNNNNMM IIIIIIIIIIIIIIN* IIIIIIIIIIIIIIIINNMMMMMMMMMMM 在左边的一列中取出I、IIII、IIIIIIII、IIIIIIIIIIIIIIN(这四个数之和为a,取出的数紧接输出一个“*”,这四行对应的右边的四项之和即为a X b,结果为: IIIIIIIIINNNNNNNNNNNNMMMMMMMMMMMMMMM 编程完成上述乘法。

输入

输入文件仅含两行,第一行为“a”,第二行为“b”。(a和 b为我们地球上使用的小于等于32767的正整数)

输出

输出由若干行组成。每行的左列从上到下依次为:I、II、IIII…,取出的数紧接着输出一个“*”,右列从上到下依次为:I、II、IIII等与b的乘积,左列与右列之间用一个空格隔开。最后的一行输出“The solution is: ”和最后的积aXb。

样例输入 复制

IIIIIIIIINN
IIIIINNNNNN

样例输出 复制

I* IIIIINNNNNN
II IIIIIIIIIINNNNNNNNNNNN
IIII* IINNNNNNNM
IIIIIIII* IIIINNNNNNNNNNNNNNMM
IIIIIIIIIIIIIIII IIIIIIIINNNNNNNNNNMMMMM
IIIIIIIIIIIIIIN* IIIIIIIIIIIIIIIINNMMMMMMMMMMM
The solution is:IIIIIIIIINNNNNNNNNNNNMMMMMMMMMMMMMMM