初夏、樱花落 2013-08-24 03:31:00
点我顶贴
收藏
删除
[color=blue]
var a,b,c:array[1..50000]of longint;
n1,n2:ansistring;
n,i,j,x:longint;
begin
readln(n);
readln(n1);
readln(n2);
for i:=1 to n do a[n-i+1]:=ord(n1[i])-48;
for i:=1 to n do b[n-i+1]:=ord(n2[i])-48;
for i:=1 to n do
begin
x:=0;
for j:=1 to n do
begin
c[i+j-1]:=a[i]*b[j]+x+c[i+j-1];
x:=c[i+j-1] div 10;
c[i+j-1]:=c[i+j-1] mod 10;
end;
c[i+j]:=x;
end;
n:=n*2;
while (c[n]=0) and (n>1) do dec(n);
for i:=n downto 1 do write(c[i]);
end.
[color=green]本题我只过了前四个点!明明已经用了ansistring了啊?为什么还是不过啊。真是无助了!
[color=red]大家看看啊!!!
#1 107229HR@2013-08-23 18:11:00
30902
回复
删除
你是超时了吧,100000*100000爆了
如果你足够神犇的话,你可以去试试。。。。
听说有个东西叫fft专门解决这类问题,我不会。
所以此题我没AC