Cow Multiplication

Time Limit: 1000MS

 

Memory Limit: 65536K

Total Submissions: 9717

 

Accepted: 6574

Description

Bessie is tired of multiplying pairs of numbers the usual way, so she invented her own style of multiplication. In her style, A*B is equal to the sum of all possible pairwise products between the digits of A and B. For example, the product 123*45 is equal to 1*4 + 1*5 + 2*4 + 2*5 + 3*4 + 3*5 = 54. Given two integers A and B (1 ≤ A, B ≤ 1,000,000,000), determine A*B in Bessie's style of multiplication.

Input

* Line 1: Two space-separated integers: A and B.

Output

* Line 1: A single line that is the A*B in Bessie's style of multiplication.

Sample Input

123 45

 

Sample Output

54

Source

USACO 2008 February Bronze

 解题报告:简单的数学题,把每位数用数组存储,再相乘即可!

代码如下:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
const int MAX = 25;
int a[MAX], b[MAX];
int main()
{
    int ans, n, m, i, j, p, q;
    scanf("%d%d", &n, &m);
    i = 0;
    while (n)
    {
        a[i] = n % 10;
        n = n / 10;
        i ++;
    }
    p = i;
    i = 0;
    while (m)
    {
        b[i] = m % 10;
        m = m / 10;
        i ++;
    }
    q = i;
    ans = 0;
    for (i = 0; i < p; ++i)
    {
        for (j = 0; j < q; ++j)
        {
            ans += a[i] * b[j];
        }
    }
    printf("%d\n", ans);
    return 0;
}
posted on 2012-05-10 22:09  Stephen Li  阅读(312)  评论(0编辑  收藏  举报