#include<bits/stdc++.h>
using namespace std;
int a[202],b[202],c[402];
void chen(int a[],int b[],int c[])
{
memset(c,0,sizeof(c));
c[0]=a[0]+b[0];
for(int i=1;i<=a[0];i++)
{
for(int j=1;j<=b[0];j++)
{
c[i+j-1]+=a[i]*b[j];
c[i+j]+=c[i+j-1]/10;
c[i+j-1]=c[i+j-1]%10;
}
}
}
void chu(int a[],int b,int c[]) //高精度除以低精度
{
memset(c,0,sizeof(c));
int x=0;
c[0]=a[0];
for(int i=c[0];i>=1;i--)
{
x=x*10+a[i];
c[i]=x/b;
x=x%b;
}
}
void jia(int a[],int b[],int c[])
{
memset(c,0,sizeof(0));
c[0]=max(a[0],b[0])+1;
for(int i=1;i<=c[0]-1;i++)
{
if(i<=a[0])
c[i]+=a[i];
if(i<=b[0])
c[i]+=b[i];
c[i+1]=c[i]/10;
c[i]=c[i]%10;
}
}
void jian(int a[],int b[],int c[])
{
memset(c,0,sizeof(c));
c[0]=a[0];
for(int i=1;i<=c[0];i++)
{
if(b[0]<i)
b[i]=0;
if(a[i]<b[i])
{
a[i+1]--;
a[i]+=10;
}
c[i]=a[i]-b[i];
}
}
string s1,s2;
int a[50];
int main()
{
cin>>s1;
a[0]=s1.size();
for(int i=1;i<=a[0];i++)
a[i]=s1[a[0]-i]-'0';
cin>>s2;
b[0]=s2.size();
for(int i=1;i<=b[0];i++)
b[i]=s2[b[0]-i]-'0';
(a,b,c); //看个人需求调用函数
while(c[0]>1&&c[c[0]]==0)
c[0]--;
for(int i=c[0];i>=1;i--)
printf("%d",c[i]);
return 0;
}
高精度算法汇总
最新推荐文章于 2024-08-09 20:39:00 发布