13 条题解

  • 1
    @ 2023-12-5 16:52:28

    这道题其实和高精度加法很像,只要在高精度加法的基础上稍加修改就可以了。

    上代码↓

    #include<bits/stdc++.h>
    using namespace std;
    int c[100000];
    int a1[100000],b1[100000];
    int len1,len2,len3,x;
    string a,b;
    int r,y;
    int main(){
    	cin>>a>>b;
    	len1=a.size();
    	len2=b.size();
    	for(int i=0;i<len1;i++)a1[i]=a[len1-i-1]-'0';
    	for(int i=0;i<len2;i++)b1[i]=b[len2-i-1]-'0';
    	for(int i=0;i<len1;i++){
    		for(int j=0;j<len2;j++){
    			c[i+j]+=a1[i]*b1[j];
    			c[i+j+1]+=c[i+j]/10;
    			c[i+j]%=10;
    		}
    	}
    	len3=len1+len2;
    	while(c[len3]==0&&len3>0){
    		len3--;
    	}
    	for(int i=len3;i>=0;i--)cout<<c[i];
    	return 0;
    }
    

    点个赞呗

    信息

    ID
    1187
    时间
    1000ms
    内存
    128MiB
    难度
    6
    标签
    递交数
    663
    已通过
    202
    上传者