LeetCode OJ:Multiply Strings

来源:互联网 发布:unity3d真实地形制作 编辑:程序博客网 时间:2024/06/07 04:58

Multiply Strings

 

Given two numbers represented as strings, return multiplication of the numbers as a string.

Note: The numbers can be arbitrarily large and are non-negative.

class Solution {public:    string multiply(string num1, string num2) {        vector<int> res(num1.length()+num2.length());          vector<int> n1;          vector<int> n2;          for(int i=num1.length()-1;i>=0;--i)              n1.push_back(num1[i]-'0');          for(int i=num2.length()-1;i>=0;--i)              n2.push_back(num2[i]-'0');          for(int i=0;i<n1.size();++i){              for(int j=0;j<n2.size();++j){                  res[i+j] += n1[i]*n2[j];                  res[i+j+1] += res[i+j]/10;                  res[i+j] = res[i+j]%10;              }          }          string ret;          int i=res.size()-1;          while(res[i]==0 && i>=0)              --i;          if(i<0)              return "0";          while(i>=0){              ret.push_back('0'+res[i]-0);              --i;          }          return ret;      }};



0 0