My code showing error for a test case:
5131848155574784703269632922904933776792735241197982102373370
56675688419586288442134264892419611145485574406534291250836
string Solution::multiply(string A, string B)
{
string ans="",temp;
int j,k,res,i;
if(A==“0” || B==“0”)
return “0”;
for(int l=B.size()-1;l>=0;l–)
{
j=B.size()-1;
temp="";
while(j–>l)
temp.push_back(‘0’);
k=B[l]-'0';
res=0;
for(j=A.size()-1;j>=0;j--)
{
res=res+(k*(A[j]-'0'));
temp.push_back(res%10+'0');
res=res/10;
}
if(res>0)
temp+=to_string(res);
//return temp;
if(ans=="")
ans=temp;
else
{
i=0;
res=0;
while(i<temp.size()&& i<ans.size())
{
res=res+(temp[i]-'0')+(ans[i]-'0');
ans[i]=res%10 + '0';
res=res/10;
i++;
}
if(i<temp.size())
{
res=res+(temp[i]-'0');
ans.push_back(res%10 + '0');
res=res/10;
i++;
}
if(i<ans.size())
{
res=res+(ans[i]-'0');
ans[i]=res%10 + '0';
res=res/10;
i++;
}
if(res>0)
ans+=to_string(res);
//return ans;
}
}
temp="";
for(int i=ans.size()-1;i>=0;i--)
temp.push_back(ans[i]);
return temp;
}