16 条题解

  • 3
    @ 2021-11-6 20:57:28
    /*****************************************
    备注:
    ******************************************/
    #include <queue>
    #include <math.h>
    #include <stack>
    #include <stdio.h>
    #include <iostream>
    #include <vector>
    #include <iomanip>
    #include <string.h>
    #include <algorithm>
    using namespace std;
    #define LL long long
    const int N = 1e5 + 10;
    const int INF = 0x3f3f3f3f;
    int x[N],y[N],z[N];
    int main()
    {
    	string a,b;
    	cin >> a >> b;
    	int lena = a.size();
    	int lenb = b.size();
    	for(int i = 0 ; i < lena ; i++)
    		x[i] = a[lena - i - 1] - '0';
    	for(int i = 0 ; i < lenb ; i++)
    		y[i] = b[lenb - i - 1] - '0';
    	for(int i = 0 ; i < lena ; i++)
    		for(int j = 0 ;j  < lenb ; j++)
    		{
    			z[i+j] += x[i] * y[j];
    			z[i+j + 1] += z[i+j]/10;
    			z[i+j] %= 10;
    		}
    	int len = lena + lenb  ;
    	while( !z[len] && len > 0) len--;
    
    	for(int i = len ; i >= 0 ; i--)
    		cout << z[i];
    	return 0;
    }
    
    
    
    
    
    
    
    • 2
      @ 2023-11-26 18:13:12
      #include <iostream>
      using namespace std;
      #define ll long long
      const int N =1e5+10;
      const int INF =0x3f3f3f3f;
      string a,b;
      int a1[N],b1[N],c1[N],lena,lenb,lenc,x;
      int main()
      {
      	cin>>a>>b;
      	lena=a.size();
      	lenb=b.size();
      	for(int i=0;i<lena;i++)
      	{
      		a1[i]=a[lena-i-1]-'0';
      	}
      	for(int i=0;i<lenb;i++)
      	{
      		b1[i]=b[lenb-i-1]-'0';
      	}
      	for(int i=0;i<lenb;i++)
      	{
      		x=0;
      		for(int j=0;j<lena;j++)
      		{
      			c1[i+j]+=a1[j]*b1[i]+x;
      			x=c1[i+j]/10;
      			c1[i+j]%=10;
      		}
      		c1[lena+i]=x;
      	}
      	lenc=lena+lenb;
      	while(c1[lenc]==0&&lenc>0)
      	{
      		lenc--;
      	}
      	for(int i=lenc;i>=0;i--)
      	{
      		cout<<c1[i];
      	}
       	return 0;
      }
      
      • 1
        @ 2025-8-11 21:41:33
        #include <bits/stdc++.h>
        #include <iostream>
        #include <iomanip>
        #include <cmath>
        #include <stdio.h>
        #include <cstdio>
        #include <algorithm>
        #include <string>
        #include <string.h>
        #include <cstring>
        #include <stack>
        #include <queue>
        #include <math.h>
        using namespace std;
        const int N = 1e5+10;
        const int INF = 0x3f3f3f3f;
        char a[N],b[N],c[N];
        int lena,lenb,lenc,a1[N],b1[N],c1[N],x;
        int main()
        {
        	cin >> a >> b;
        	lena=strlen(a);
        	lenb=strlen(b);
        	for(int i=0;i<lena;i++)
        	{
        		a1[i]=a[lena-i-1]-'0';
        	}
        	for(int i=0;i<lenb;i++)
        	{
        		b1[i]=b[lenb-i-1]-'0';
        	}
        	for(int i=0;i<lenb;i++)
        	{
        		for(int j=0;j<lena;j++)
        		{
        			c1[i+j]+=a1[j]*b1[i]+x;
        			x=c1[i+j]/10;
        			c1[i+j]%=10;
        		}
        		c1[i+lena]=x;
        		x=0;
        	}
        	lenc=lena+lenb;
        	while(c1[lenc]==0 && lenc>0)
        	{
        		lenc--;
        	}
        	for(int i=lenc;i>=0;i--)
        	{
        		cout << c1[i];
        	}
        	return 0;
        }
        
        
        

        有标志认证,属三无产品,请大家放心食用

        • 1
          @ 2025-7-22 9:03:32
          #include<iostream>
          #include<string.h>
          using namespace std;
          const int N=1e6+10;
          int a[N],b[N],c[N];
          int main()
          {
          	string aa,bb;
          	cin>>aa>>bb;
          	int lena=aa.size(),lenb=bb.size();
          	for(int i=0;i<lena;i++)a[i]=aa[lena-i-1]-'0';
          	for(int i=0;i<lenb;i++)b[i]=bb[lenb-i-1]-'0';
          	for(int i=0;i<lena;i++)
          	{
          		for(int j=0;j<lenb;j++)
          		{
          			c[i+j]+=a[i]*b[j];
          			c[i+j+1]+=c[i+j]/10;
          			c[i+j]%=10;
          		}
          	}
          	int len=lena+lenb;
          	while(c[len]==0&&len>0)len--;
          	for(int i=len;i>=0;i--)cout<<c[i];
          	return 0;
          }
          
          • 1
            @ 2024-12-6 18:28:22

            不要抄哦

            //禁止抄袭 
            #include <bits/stdc++.h>
            
            using namespace std;
            #define ll long long
            const int N =1e5+10;
            const int INF =0x3f3f3f3f;
            string a,b;
            int a1[N],b1[N],c1[N],lena,lenb,lenc,x;
            int main()
            {
            	cin>>a>>b;
            	lena=a.size();
            	lenb=b.size();
            	for(int i=0;i<lena;i++)
            	{
            		a1[i]=a[lena-i-1]-'0';
            	}
            	for(int i=0;i<lenb;i++)
            	{
            		b1[i]=b[lenb-i-1]-'0';
            	}
            	for(int i=0;i<lenb;i++)
            	{
            		x=0;
            		for(int j=0;j<lena;j++)
            		{
            			c1[i+j]+=a1[j]*b1[i]+x;
            			x=c1[i+j]/10;
            			c1[i+j]%=10;
            		}
            		c1[lena+i]=x;
            	}
            	lenc=lena+lenb;
            	while(c1[lenc]==0&&lenc>0)
            	{
            		lenc--;
            	}
            	for(int i=lenc;i>=0;i--)
            	{
            		cout<<c1[i];
            	}
             	return 0;
            }
            /*
            /输入样例/
            2 3
            /输出样例/
            6
            */
            
            • 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;
              }
              

              点个赞呗

              • 0
                @ 2024-9-18 17:01:52
                #include <iostream>
                using namespace std;
                const int N =1e5+10;
                const int INF =0x3f3f3f3f;
                string a,b;
                int a1[N],b1[N],c1[N],lena,lenb,lenc,x;
                int main(){
                	cin>>a>>b;
                	lena=a.size();
                	lenb=b.size();
                	for(int i=0;i<lena;i++){
                		a1[i]=a[lena-i-1]-'0';
                	}
                	for(int i=0;i<lenb;i++){
                		b1[i]=b[lenb-i-1]-'0';
                	}
                	for(int i=0;i<lenb;i++){
                		x=0;
                		for(int j=0;j<lena;j++){
                			c1[i+j]+=a1[j]*b1[i]+x;
                			x=c1[i+j]/10;
                			c1[i+j]%=10;
                		}
                		c1[lena+i]=x;
                	}
                	lenc=lena+lenb;
                	while(c1[lenc]==0&&lenc>0){
                		lenc--;
                	}
                	for(int i=lenc;i>=0;i--){
                		cout<<c1[i];
                	}
                 	return 0;
                }
                
                • 0
                  @ 2024-7-27 15:05:29
                  #include<iostream>
                  using namespace std;
                  int main(){
                  	string a1,b1;
                  	cin>>a1>>b1;
                  	int a[1000]={},b[1000]={},c[1000]={};
                  	int lena=a1.size(),lenb=b1.size();
                  	for(int i=1;i<=lena;i++)
                  		a[i]=a1[lena-i]-'0';
                  	for(int i=1;i<=lenb;i++)
                  		b[i]=b1[lenb-i]-'0';
                  	for(int i=1;i<=lena;i++){
                  		int x=0;
                  		for(int j=1;j<=lenb;j++){
                  			c[i+j-1]+=a[i]*b[j]+x;
                  			x=c[i+j-1]/10;
                  			c[i+j-1]%=10;
                  		}
                  		c[i+lenb]=x;
                  	}
                  	int lenc=lena+lenb;
                  	while(c[lenc]==0&&lenc>1)
                  		lenc--;
                  	for(int i=lenc;i>0;i--)
                  		cout<<c[i];
                  	return 0;
                  }
                  
                  • 0
                    @ 2023-11-25 20:18:56

                    #include #include <math.h> #include #include <stdio.h> #include #include #include #include <string.h> #include using namespace std; #define LL long long const int N = 1e6 + 10; const int INF = 0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin >> a; cin >> b; lena = a.size(); lenb = b.size();

                    for(int i = 0;i <lena;i++)
                    {
                    	a1[i]= a[lena-i-1] -'0';
                    }
                    for(int i = 0;i <lenb;i++)
                    {
                    	b1[i]= b[lenb-i-1] -'0';
                    }
                    for(int i = 0;i < lenb;i++)
                    {
                    	x =0;
                    	for(int j = 0;j < lena;j++)
                    	{
                    		c1[i + j]+=a1[j]* b1[i]+x;
                    		x = c1[i + h]/10;
                    		c1 [i+j]%=10;
                    	}
                    	c1[lena + i]=x;
                    } 
                    lenc = lena +lenb;
                    while(c1[lenc]==0&&lenc>0)
                    	lenc--;
                    for(int i = lenc;i >= 0;i--)
                    	cout <<c1[i];
                    return 0;
                    

                    }

                    • 0
                      @ 2023-11-25 20:10:58

                      #include #include #include #include #include #include #include using namespace std; const int N =1e5+10; string a , b; int lena , lenb , lenc , a1[N] , b1[N] , c1[N] , x; int main() { cin>>a>>b; lena = a.size(); lenb = b.size(); for(int i = 1;i <= lena;i++) { a1[i] = a[lena - i] - '0'; } for(int i = 1;i <= lenb;i++) { b1[i] = b[lenb - i] - '0'; } for(int i = 1;i <= lenb;i++) { x = 0; for(int j = 1;j<= lena;j++) { c1[i + j - 1] += a1[j] * b1[i] + x; x = c1[i + j - 1] / 10; c1[i + j - 1] %= 10; } c1[i + lena] = x; } lenc = lena + lenb; while(c1[lenc] == 0 && lenc > 1) { lenc--; } for(int i = lenc;i >= 1;i--) { cout<<c1[i]; } return 0; }

                      • [ ] > ````````````````````````````````````````````````````````````````````````````````````````````````**************

                        **************
                        
                        
                        **********
                        
                        ******
                        
                        **
                        
                        
                        
                      
                      
                      
                      
                      • 0
                        @ 2023-10-29 20:27:29
                        #include <bits/stdc++.h>
                        using namespace std;
                        #define LL long long
                        const int N = 1e5 + 10;
                        const int INF = 0x3f3f3f3f;
                        int x[N],y[N],z[N];
                        int main()
                        {
                        	string a,b;
                        	cin >> a >> b;
                        	int lena = a.size();
                        	int lenb = b.size();
                        	for(int i = 0 ; i < lena ; i++)
                        		x[i] = a[lena - i - 1] - '0';
                        	for(int i = 0 ; i < lenb ; i++)
                        		y[i] = b[lenb - i - 1] - '0';
                        	for(int i = 0 ; i < lena ; i++)
                        		for(int j = 0 ;j  < lenb ; j++)
                        		{
                        			z[i+j] += x[i] * y[j];
                        			z[i+j + 1] += z[i+j]/10;
                        			z[i+j] %= 10;
                        		}
                        	int len = lena + lenb  ;
                        	while( !z[len] && len > 0) len--;
                        
                        	for(int i = len ; i >= 0 ; i--)
                        		cout << z[i];
                        	return 0;
                        }
                        
                        • 0
                          @ 2023-10-25 19:47:16

                          #include #include <math.h> #include #include <stdio.h> #include #include #include #include <string.h> #include using namespace std; const int N=1e5+10; const int INF=0x3f3f3f3f; char a[N],b[N]; int a1[N],b1[N],c1[N],lenc,x; int main(){ cin>>a>>b; int lena=strlen(a); int lenb=strlen(b); for(int i=0;i<lena;i++) a1[i]=a[lena-i-1]-'0'; for(int j=0;j<lenb;j++) b1[j]=b[lenb-j-1]-'0';

                          for(int i=0;i<lenb;i++){
                          	x=0;
                          	for(int j=0;j<lena;j++){
                          		c1[i+j]+=a1[j]*b1[i]+x;
                          		x=c1[i+j]/10;
                          		c1[i+j]%=10;
                          		
                          	}
                          	c1[lena+i]=x;
                          	
                          }
                          
                          lenc=lena+lenb;
                          while(c1[lenc]==0&&lenc>0)
                          	lenc--;
                          for(int i=lenc;i>=0;i--)
                          	cout<<c1[i];
                          
                          
                          
                          return 0;
                          

                          }

                          • -1
                            @ 2024-3-17 15:47:14

                            #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; } #include using namespace std; #define ll long long const int N =1e5+10; const int INF =0x3f3f3f3f; string a,b; int a1[N],b1[N],c1[N],lena,lenb,lenc,x; int main() { cin>>a>>b; lena=a.size(); lenb=b.size(); for(int i=0;i<lena;i++) { a1[i]=a[lena-i-1]-'0'; } for(int i=0;i<lenb;i++) { b1[i]=b[lenb-i-1]-'0'; } for(int i=0;i<lenb;i++) { x=0; for(int j=0;j<lena;j++) { c1[i+j]+=a1[j]*b1[i]+x; x=c1[i+j]/10; c1[i+j]%=10; } c1[lena+i]=x; } lenc=lena+lenb; while(c1[lenc]==0&&lenc>0) { lenc--; } for(int i=lenc;i>=0;i--) { cout<<c1[i]; } return 0; }

                            • -2
                              @ 2025-5-17 18:45:47
                              #include <iostream>
                              using namespace std;
                              #define ll long long
                              const int N =1e5+10;
                              const int INF =0x3f3f3f3f;
                              string a,b;
                              int a1[N],b1[N],c1[N],lena,lenb,lenc,x;
                              int main()
                              {
                              	cin>>a>>b;
                              	lena=a.size();
                              	lenb=b.size();
                              	for(int i=0;i<lena;i++)
                              	{
                              		a1[i]=a[lena-i-1]-'0';
                              	}
                              	for(int i=0;i<lenb;i++)
                              	{
                              		b1[i]=b[lenb-i-1]-'0';
                              	}
                              	for(int i=0;i<lenb;i++)
                              	{
                              		x=0;
                              		for(int j=0;j<lena;j++)
                              		{
                              			c1[i+j]+=a1[j]*b1[i]+x;
                              			x=c1[i+j]/10;
                              			c1[i+j]%=10;
                              		}
                              		c1[lena+i]=x;
                              	}
                              	lenc=lena+lenb;
                              	while(c1[lenc]==0&&lenc>0)
                              	{
                              		lenc--;
                              	}
                              	for(int i=lenc;i>=0;i--)
                              	{
                              		cout<<c1[i];
                              	}
                               	return 0;
                              }
                              
                              
                              
                              • -2
                                @ 2024-3-17 15:43:31

                                不是,看题解的都有啥实力锕

                                • -4
                                  @ 2022-3-19 10:11:37
                                  #include <bits/stdc++.h>
                                  using namespace std;
                                  const int N = 1e5 + 10;
                                  const int INF = 0x3f3f3f3f;
                                  char aa[N],bb[N],cc[N];
                                  int a[N],b[N],c[N];
                                  int main()
                                  {
                                  	cin >> aa >> bb;
                                  	int lena = strlen(aa);
                                  	int lenb = strlen(bb);
                                  	for(int i = 0;i < lena;i++)
                                  		a[i] = aa[lena - i - 1] - '0';
                                  	for(int i = 0;i < lenb;i++)
                                  		b[i] = bb[lenb - i - 1] - '0';
                                  	for(int i = 0;i < lena;i++)
                                  	{
                                  		for(int j = 0;j < lenb;j++)
                                  		{
                                  			c[i+j] +=a[i] * b[j];
                                  			if(c[i+j] > 9)
                                  			{
                                  				c[i+j+1]+= c[i+j]/10;
                                  				c[i+j] = c[i+j]%10;
                                  			}
                                  		}
                                  	}
                                  	int len = lena +lenb;
                                  	while(c[len] == 0 && len > 0)
                                  	{
                                  		len--;
                                  	}	
                                  	for(int i = len;i >=0;i--)
                                  		cout << c[i];
                                  	return 0;
                                  }
                                  
                                  • 1

                                  信息

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