题目描述
公牛在数学方面比奶牛强很多,他们自称可以计算很大的整数之间的乘法,并得到精确的结果。农夫约翰想知道他们的答案是否正确。请你帮助他检查公牛的答案。读入2个正整数(不大于10^40),计算他们的乘积,输出一个自然数(不能含有多余的零)。
约翰农夫让你自己做这个工作。
输入
第1…2行:每行包含一个十进制数
输出
第1行:输出两个数乘积
Code
#pragma GCC optimize(3)
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
const int Maxn = 100510;
struct fantastic {
int len, s[Maxn];
fantastic()
{
memset( s, 0, sizeof(s) );
len = 1;
}
fantastic( int num )
{
*this = num;
}
fantastic( const char* num )
{
*this = num;
}
fantastic operator =( int num )
{
char s[Maxn];
sprintf( s, "%d", num );
*this = s;
return(*this);
}
string str() const
{
string res = "";
for ( int i = 0; i < len; i++ )
res = (char) (s[i] + '0') + res<