输入两个自然数,输出他们相乘后数的位数。(1<=a,b<=2^64)
/*************************
** 求A*B的位数
*
* 可以用数学log10()函数来解决相乘两数的位数问题
*
* 赵宣
*
* 2015.4.19
*
* bug 无
*
*
******************************/
#include<iostream>
#include<math.h>
using namespace std;
int main()
{
long double a,b,c;// 保证2^64可以存储
cin>>a>>b;
if(a*b<10)// 对特殊情况的分离
{
cout<<1<<endl;
}
else if(a*b>=10&&a*b<100)
{
cout<<2<<endl;
}
else
{
cout<<(int)(log10((float)a)+log10((float)b))+1<<endl;
}
return 0;
}