#include<stdlib.h>
#include<stdio.h>
#include<string.h>
void main(){
int i,j,len=0,k,pos=-1;
char a[100],b[100],c[200],d[1000];
gets(a);
gets(b);
strrev(a);strrev(b);
memset(d,'0',sizeof(d));
for(i=0;b[i]!='\0';i++)
{
int num=0;
for(j=0;a[j]!='\0';j++) //处理进位
{
if(j<=pos) num +=(b[i]-'0')*(a[j]-'0')+(d[j]-'0');
else num +=(b[i]-'0')*(a[j]-'0');
d[j] = num%10 +'0';
num /=10;
}
c[len++]=d[0]; //保存最地位值
for(k=1;k<j;k++) //a[0] 后面的字符都往前面移动一位
d[k-1] = d[k];
if(num != 0) //最高位有进位
{
d[--k] = num+'0';
pos = k-1;
}
else { d[--k] ='\0'; pos = k-1;}
}
c[len] ='\0'; //给c数组结束标志
strrev(c);
strrev(d); //给a里面反序,就是将高位换到前面 低位在后面
strcat(d,c);
puts(d);
}*/