#include<iostream> #include<cstring>
using namespace std;
void init(int a[]) { string s; cin>>s; a[0]=s.length(); for(int i=1;i<=a[0];i++) a[i]=s[a[0]-i]-'0'; }
void print(int a[]) { if(a[0]==0) { cout<<0; return; } for(int i=a[0];i>0;i--) cout<<a[i]; cout<<endl; }
int compare(int a[],int b[])
{ if(a[0]>b[0]) return 1; if(a[0]<b[0]) return -1; for(int 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[]) { int flag=compare(a,b); if(flag==0) { a[0]=0; return; } if(flag==1) { for(int 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]--; } }
void numcpy(int p[],int q[],int det) { q[0]=p[0]+det-1; for(int i=1;i<=p[0];i++) q[det+i-1]=p[i]; }
void chugao(int a[],int b[],int res[]) { int tmp[10001]; res[0]=a[0]-b[0]+1; for(int i=res[0];i>0;i--) { memset(tmp,0,sizeof(tmp)); numcpy(b,tmp,i); while(compare(a,tmp)>=0) { res[i]++; jian(a,tmp); } } while(res[0]>0&&res[res[0]]==0) res[0]--; }
int main() { int a[10001],b[10001],res[10001]; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(res,0,sizeof(res)); init(a); init(b); chugao(a,b,res); print(res); print(a); return 0; }
|