HLEP!

P1303 A*B Problem

@[王川德少](/space/show?uid=112190) 请调整一下格式
by 钱逸凡 @ 2018-10-20 20:32:58


希望更丰富的展现?使用Markdown
by Ikari_Shinji @ 2018-10-20 20:33:13


```Python a=input() b=input() print(int(a)+int(b)) ```
by TRZ_2007 @ 2018-10-20 20:34:14


```cpp #include<cstdio> #include<cstring> using namespace std; struct sd{ int t[3000],len; }; sd readit( ){ sd x;char st[3000]; memset(x.t,0,sizeof(x.t)); scanf("%s",st); int k=0; x.len=strlen(st); for(int i=x.len-1;i>=0;i--){ x.t[k]=st[i]-48;k++; } return x; } sd add(sd a,sd b){ int k=a.len>b.len?a.len:b.len; for(int i=0;i<k;i++){ a.t[i]=a.t[i]+b.t[i]; a.t[i+1]=a.t[i+1]+a.t[i]/10; a.t[i]=a.t[i]%10; } a.len=1; for(int i=k;i>=1;i--) if(a.t[i]>0){ a.len=i+1;break; } return a; } sd mult(sd a,sd b){ sd t; t.len=a.len+b.len; for(int i=0;i<a.len;i++) for(int j=0;j<b.len;j++){ t.t[i+j]=a.t[i]*b.t[j]+t.t[i+j]; t.t[i+j+1]=t.t[i+j]/10+t.t[i+j+1]; t.t[i+j]=t.t[i+j]%10; } a.len=1; for(int i=t.len;i>=1;i--) if(t.t[i]>0){ a.len=i+1;break; } for(int i=0;i<a.len+b.len;i++){ a.t[i]=t.t[i]; } return a; } void outit(sd x){ for (int i=x.len-1;i>=0;i--){ printf("%d",x.t[i]); } } int main(){ sd a=readit(),b=readit(),c; c=mult(a,b); outit(c); return 0; } ```
by zyz1001 @ 2018-10-20 20:34:31


玄学$Python$
by TRZ_2007 @ 2018-10-20 20:34:31


mult为何不直接返回t?
by 钱逸凡 @ 2018-10-20 20:36:42


@[钱逸凡](/space/show?uid=28088) 直接返回t,最后一个过了,但第一个又错了=n=
by zyz1001 @ 2018-10-20 20:39:21


``` #include<cstdio> #include<cstring> using namespace std; struct sd{ int t[3000],len; }; sd readit( ){ sd x;char st[3000]; memset(x.t,0,sizeof(x.t)); scanf("%s",st); x.len=strlen(st); int k=0; for(int i=x.len-1;i>=0;i--){ x.t[k++]=st[i]-48; } return x; } sd mult(sd a,sd b){ sd t; t.len=a.len+b.len; for(int i=0;i<a.len;i++) for(int j=0;j<b.len;j++){ t.t[i+j]=a.t[i]*b.t[j]+t.t[i+j]; t.t[i+j+1]=t.t[i+j]/10+t.t[i+j+1]; t.t[i+j]=t.t[i+j]%10; } int l=t.len; while(t.t[l]==0&&l>0)l--; t.len=l; return t; } void outit(sd x){ for (int i=x.len;i>=0;i--){ printf("%d",x.t[i]); } } int main(){ sd a=readit(),b=readit(),c; c=mult(a,b); outit(c); return 0; } ``` 帮你改了一下,可以过了。 你之前输出错了
by 钱逸凡 @ 2018-10-20 20:41:56


注意输出要从x.len开始
by 钱逸凡 @ 2018-10-20 20:42:33


@[钱逸凡](/space/show?uid=28088) 谢谢=v=
by zyz1001 @ 2018-10-20 20:50:49


| 下一页