Cow Multiplication
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 13312 | Accepted: 9307 |
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
分析:算是处理字符串吧!用两个数组去做,用一个数去计算它们的和即可!
下面给出AC代码:
1 #include <algorithm> 2 #include <cstring> 3 #include <cstdio> 4 #include <iostream> 5 using namespace std; 6 int main() 7 { 8 char a[10005],b[10005]; 9 int c[10005]; 10 while(scanf("%s%s",&a,&b)!=EOF) 11 { 12 memset(c,0,sizeof(c)); 13 int s=0; 14 int lena=strlen(a); 15 int lenb=strlen(b); 16 for(int i=0;i<lena;i++) 17 { 18 for(int j=0;j<lenb;j++) 19 { 20 c[i]=(int)(a[i]-'0')*(int)(b[j]-'0'); 21 s+=c[i]; 22 } 23 } 24 cout<<s<<endl; 25 } 26 return 0; 27 }