本文共 5857 字,大约阅读时间需要 19 分钟。
#include#include #include #include using namespace std;string s1,s2;int a[1010],b[1010],c[1010],len1,len2,alen,blen,clen,llen,s;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); cin>>s1; cin>>s2; len1=s1.size(); len2=s2.size(); llen=max(len1,len2); for(i=llen,j=len1-1;j>=0;i--,j--) { a[i]=s1[j]-'0'; } for(i=llen,j=len2-1;j>=0;i--,j--) { b[i]=s2[j]-'0'; } return;}void plus_(){ int i; s=0; for(i=llen;i>=1;i--) { c[i]=a[i]+b[i]+s; s=c[i]/10; c[i]=c[i]%10; } c[0]=s; return;}void out_(){ int i; if (s>0) printf("%d",s); for(i=1;i<=llen;i++) printf("%d",c[i]); return;}int main(){ in_(); plus_(); out_(); return 0; }
#include#include #include #include using namespace std;char s1[1000],s2[1000];bool t;long long a[1010],b[1010],c[1010],len1,len2,n;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); scanf("%s",&s1); scanf("%s",&s2); len1=strlen(s1); len2=strlen(s2); for(i=1001-len1;i<=1000;i++) a[i]=s1[i+len1-1001]-'0'; for(i=1001-len2;i<=1000;i++) b[i]=s2[i+len2-1001]-'0'; return;}bool bj(){ if (len1 =1;i--) { if (a[i]
#include#include #include #include using namespace std;string s;long long a[1010],b,c[1010],len,w;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(c,0,sizeof(c)); cin>>s; cin>>b; len=s.size(); for(i=len;i>0;i--) { a[i]=s[i-1]-'0'; } return;}void plus_(){ int i; w=0; for(i=len;i>=1;i--) { c[i]=a[i]*b+w; w=c[i]/10; c[i]=c[i]%10; } c[0]=w; return;}void out_(){ int i; if (w>0) printf("%d",w); for(i=1;c[i]==0&&i<=len;i++); if (i>len) { printf("0"); return; } for(;i<=len;i++) printf("%d",c[i]); return;}int main(){ in_(); plus_(); out_(); return 0; }
#include#include #include #include using namespace std;char s1[1010],s2[1010];long long a[1010],b[1010],c[1010],len1,len2,llen,w;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); scanf("%s",&s1); scanf("%s",&s2); len1=strlen(s1); len2=strlen(s2); llen=max(len1,len2); for(i=1,j=len1-1;j>=0;i++,j--) { a[i]=s1[j]-'0'; } for(i=1,j=len2-1;j>=0;i++,j--) { b[i]=s2[j]-'0'; } return;}void cheng_(){ int i,j; for(i=1;i<=len1;i++) { for(j=1;j<=len2;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; } } return;}void out_(){ int i; for(i=1000;c[i]==0&&i>=1;i--); if (i==0) { printf("0"); return; } for(;i>=1;i--) printf("%lld",c[i]); return;}int main(){ in_(); cheng_(); out_(); return 0; }
#include#include #include #include using namespace std;char s[1010];long long a[1010],c[1010],b,len,g;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(c,0,sizeof(c)); scanf("%s",&s); scanf("%lld",&b); len=strlen(s); for(i=len;i>0;i--) { a[i]=s[i-1]-'0'; } return;}void chu_(){ int i; g=0; for(i=1;i<=len;i++) { c[i]=(g*10+a[i])/b; g=(g*10+a[i])%b; } return;}void out_(){ int i; for(i=1;c[i]==0&&i<=len;i++); if (i>len) printf("0"); else { for(;i<=len;i++) printf("%lld",c[i]); } printf("...%lld",g); return;}int main(){ in_(); chu_(); out_(); return 0; }
#include#include #include #include using namespace std;char s1[1010],s2[1010];long long a[1010],b[1010],c[1010],len1,len2,llen;void in_(){ int i,j; memset(a,0,sizeof(a)); memset(b,0,sizeof(a)); memset(c,0,sizeof(c)); scanf("%s",&s1); scanf("%s",&s2); len1=strlen(s1); len2=strlen(s2); llen=max(len1,len2); for(i=llen,j=len1-1;j>=0;i--,j--) { a[i]=s1[j]-'0'; } for(i=llen,j=len2-1;j>=0;i--,j--) { b[i]=s2[j]-'0'; } return;}bool cmp(){ int i,l1,l2; for(i=1;a[i]==0;i++); l1=llen-i+1; for(i=1;b[i]==0;i++); l2=llen-i+1; if (l1 l2) return 1; for(i=l1;i<=llen;i++) { if (a[i]>b[i]) return 1; if (a[i] =10;i--) { c[i-1]++; c[i]=c[i]%10; } return;} void sub(){ int i; for(i=llen;i>=1;i--) { if (a[i] llen) printf("0"); else { for(;i<=llen;i++) printf("%lld",c[i]); } printf("..."); for(i=1;a[i]==0&&i<=llen;i++); if (i>llen) printf("0"); else { for(;i<=llen;i++) printf("%lld",a[i]); } return;}int main(){ in_(); while(cmp()) { sub(); add(); } out_(); return 0; }
#include#include #include #include using namespace std;char s1[1010],s2[1010];long long a[1010],b[1010],c[1010],len1,len2,llen,w,ww;void input(){ int i,j; memset(a,0,sizeof(a)); memset(b,0,sizeof(b)); memset(c,0,sizeof(c)); scanf("%s",&s1); scanf("%s",&s2); len1=strlen(s1); len2=strlen(s2); llen=max(len1,len2); for(i=llen,j=len1-1;j>=0;i--,j--) { a[i]=s1[j]-'0'; } for(i=llen,j=len2-1;j>=0;i--,j--) { b[i]=s2[j]-'0'; } return;}bool cmp(){ int i,l1,l2; for(i=0;a[i]==0&&i<=llen;i++); l1=llen-i+1; for(i=0;b[i]==0&&i<=llen;i++); l2=llen-i+1; if (l1 l2) return 1; for(i=l1;i<=llen;i++) { if (a[i]>b[i]) return 1; if (a[i] t;i--) { b[i]=b[i-1]; } b[t]=0; ww++; w--; return;}void add(){ c[w]++; return;} void sub(){ int i; for(i=llen;i>=1;i--) { if (a[i] =0;i--); for(;i>=0;i--) printf("%lld",c[i]); printf("..."); for(i=1;a[i]==0&&i<=llen;i++); if (i>llen) printf("0"); else { for(;i<=llen;i++) printf("%lld",a[i]); } return;}int main(){ int i; input(); if (!(cmp())) { printf("0..."); for(i=1;a[i]==0&&i<=llen;i++); if (i>llen) printf("0"); else { for(;i<=llen;i++) printf("%lld",a[i]); } return 0; } ww=llen; w=0; while(cmp()) { ywl(); } ywr(); while(w>=0) { while(cmp()) { sub(); add(); } ywr(); } output(); return 0; }
转载地址:http://wmze.baihongyu.com/