2 solutions

  • 1
    @ 2025-9-14 11:25:35
    #include<bits/stdc++.h>
    using namespace std;
    int a[100010],c[100010];
    string s;
    int main()
    {
        cin>>s;
        int b;
        cin>>b;
        for(int i=0,j=s.size()-1;j>=0;i++,j--)
        {
            a[i]=s[j]-'0';
        }
        int lenc=s.size()+4;
        for(int i=0;i<=lenc;i++)
        {
            c[i]=a[i]*b;
        }
        for(int i=0;i<lenc;i++)
        {
            c[i+1]=c[i+1]+c[i]/10;
            c[i]%=10;
        }
        while(lenc>0&&c[lenc]==0) lenc--;
        for(int i=lenc;i>=0;i--)
        {
            cout<<c[i];
        }
        return 0;
    }//废物,依托答辩,还要看题解,要不要face?
    
    • 0
      @ 2025-4-12 15:41:15
      #include<bits/stdc++.h>
      using namespace std;
      const int N=2010;
      int a[N],b[N],c[N];
      string s1,s2;
      int main()
      {
      	cin>>s1>>s2;
      	int lena=s1.size();
      	int lenb=s2.size();
      	int lenc=lena+lenb;
      	for(int i=0,j=lena-1;j>=0;i++,j--)
      	{
      		a[i]=s1[j]-'0';
      	}
      	for(int i=0,j=lenb-1;j>=0;i++,j--)
      	{
      		b[i]=s2[j]-'0';
      	}
      	for(int i=0;i<lena;i++)
      	{
      		for(int j=0;j<lenb;j++)
      		{
      			c[i+j]=c[i+j]+a[i]*b[j];
      		}
      	}
      	for(int i=0;i<lenc;i++)
      	{
      		c[i+1]=c[i+1]+c[i]/10;
      		c[i]=c[i]%10;
      	}
      	while(lenc>0&&c[lenc]==0) lenc--;
      	for(int i=lenc;i>=0;i--) cout<<c[i];
      	return 0;
      }
      
      • 1

      Information

      ID
      144
      Time
      1000ms
      Memory
      256MiB
      Difficulty
      3
      Tags
      (None)
      # Submissions
      68
      Accepted
      20
      Uploaded By