#include<iostream>
using namespace std;
int digit[1000];
void mul(string str,int a){
int jinwei=0,n=0;
int len=str.length();
for(int i=len-1; i >= 0; i--){
digit[n++]=((str[i]-'0')*a+jinwei)%10;
jinwei=((str[i]-'0')*a+jinwei)/10;
}
while(jinwei!=0){
digit[n++]=jinwei%10;
jinwei /= 10;
}
int i;
for(i=n-1; i >= 0; i--)
if(digit[i]!=0) break;
if(i>=0){
for(i=i; i >= 0; i--)
cout << digit[i];
}
else cout << '0' ;
}
int main()
{
int n;
cin >> n;
while(n--){
string str;
int n;
cin >> str >> n;
mul(str,n);
cout << endl;
}
} Sicily 1381. a*b
最新推荐文章于 2017-02-20 19:57:30 发布
本文介绍了一种使用C++实现的大整数乘法算法。该算法通过字符串处理和数组操作来实现任意精度的整数乘法,适用于超出标准整型变量范围的计算场景。文章中的代码展示了如何逐位进行乘法运算,并处理进位,最终输出结果。
839

被折叠的 条评论
为什么被折叠?



