题目描述
写个算法,对2个小于1000000000的输入,求结果。 特殊乘法举例:123 * 45 = 1*4 +1*5 +2*4 +2*5 +3*4+3*5
输入描述:
两个小于1000000000的数
输出描述:
输入可能有多组数据,对于每一组数据,输出Input中的两个数按照题目要求的方法进行运算后得到的结果。
示例1
输入
123 45
输出
54
仔细观察这个算法,我发现各数位上的数之和与另一个各数位上的数之和的乘积即为结果。
例:输入123和45
123各数位之和为6,45各数位之和为9
故结果为6*9=45
超级简单易懂有没有,为我的机智打CALL
#include <stdio.h>
int main()
{
int sum_m = 0,sum_n = 0;
int m,n;
scanf("%d%d",&m,&n);
while(m > 0)
{
sum_m += m % 10;
m /= 10;
}
while(n > 0)
{
sum_n += n % 10;
n /= 10;
}
printf("%d\n",sum_m * sum_n);
}