0
已采纳
张睿杰
初级天翼
初级天翼
定义数组a[1001],b[1001],c[1001],d,i;
void init(int a[])
{
string s;
输入s
a[0]=s.length();
for(i=1;i<=a[0];i++)
a[i]=s[a[0]-i]-'0';
}
void print(int a[])
{
定义i
判断(a[0]==0)
{
输出0
return ;
}
for(i=a[0];i>0;i--) cout<<a[i];
输出换行
return ;
}
int compare(int a[],int b[])
{
定义i
if(a[0]>b[0]) return 1;
if(a[0]<b[0]) return -1;
for(i=a[0];i>0;i--)
{
if(a[i]>b[i]) return 1;
if(a[i]<b[i]) return -1;
}
return 0;
}
void jian(int a[],int b[])
{
定义flag,i;
flag=compare(a,b);
if(flag==0)
{
a[0]=0;
return ;
}
if(flag==1)
{
for(i=1;i<=a[0];i++)
{
if(a[i]<b[i])
{
a[i+1]--;
a[i]+=10;
}
a[i]-=b[i];
}
while(a[0]>0&&a[a[0]]==0) a[0]--;
return ;
}
}
void numcpy(int p[],int q[],int det)
{
for(int i=1;i<=p[0];i++) q[i+det-1]=p[i];
q[0]=p[0]+det-1;
}
void chugao(int a[],int b[],int c[])
{
定义i,tmp[1001];
c[0]=a[0]-b[0]+1;
for(i=c[0];i>0;i--)
{
memset(tmp,0,sizeof(tmp));
numcpy(b,tmp,i);
while(compare(a,tmp)>=0)
{
c[i]++;
jian(a,tmp);
}
}
while(c[0]>0&&c[c[0]]==0) c[0]--;
return ;
}
int main()
{
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
init(a);init(b);
chugao(a,b,c);
print(c);
print(a);
return 0;
}
很长的哦
1
蒋智航
高级天翼
高级天翼
for(int i=len1-1;i+1;i--) a1[++p]=s1[i]-'0';p=0;
for(int i=len2-1;i+1;i--) a2[++p]=s2[i]-'0';p=0;
a1[0]=len1;
a2[0]=len2;
a4[0]=len1-len2+1;
for(int i=a4[0];i;i--){
memset(a3,0,sizeof a3);
for(int j=1;j<=a2[0];j++) a3[j+i-1]=a2[j];
a3[0]=a2[0]+i-1;
while(bi(a1,a3)) a4[i]++,jian(a1,a3);
0
0
0
0
0