问题 C: 特殊乘法
时间限制: 1 Sec 内存限制: 32 MB 提交: 1143 解决: 733 [提交][状态][讨论版][命题人:外部导入]题目描述
写个算法,对2个小于1000000000的输入,求结果。特殊乘法举例:123 * 45 = 1*4 +1*5 +2*4 +2*5 +3*4+3*5
输入
两个小于1000000000的数
输出
输入可能有多组数据,对于每一组数据,输出Input中的两个数按照题目要求的方法进行运算后得到的结果。
样例输入
24 65
42 66666
3 67
样例输出
66
180
39
PS:本题就是一个简单的遍历字符串,数字字符-'0'=数字数值,两个for循环解决。题目比较简单,不再赘述
代码如下:
1 #include <iostream> 2 #include<string> 3 using namespace std; 4 void solve(string a,string b){ 5 int i,j; 6 int result=0; 7 for(i=0;i<a.length();i++){ 8 for(j=0;j<b.length();j++){ 9 result+=(a[i]-'0')*(b[j]-'0'); 10 } 11 } 12 cout<<result<<endl; 13 } 14 int main() 15 { 16 string a,b; 17
18 while(cin>>a>>b){ 19 solve(a,b); 20 } 21 return 0; 22 }