- 问答
- 2010-04-07 09:32:35 @
var
st1,st2:ansistring;
lena,lenb,lenc,i,j:longint;
a,b,c:packed array[1..10010]of integer;
begin
readln(st1);
readln(st2);
lena:=length(st1);
lenb:=length(st2);
for i:=1 to lena do a[lena-i+1]:=ord(st1[i])-48;
for i:=1 to lenb do b[lenb-i+1]:=ord(st2[i])-48;
for i:=1 to lena do
for j:=1 to lenb do
begin
c:=c+a[i]*b[j];
c:=c+c div 10;
c:=c mod 10;
end;
lenc:=lena+lenb;
while (c[lenc]=0)and(lenc>1) do dec(lenc);
for i:=lenc downto 1 do write(c[i]);;
end.
这个程序可以得75分,最后一个点超时,请问应该如何修改???
3 条评论
-
尖端才子 LV 10 @ 2010-04-06 20:56:15
用longint压4位时间复杂度可以压缩为1/16……
-
2010-04-06 14:15:08@
用四位的高精吧…
-
2010-04-06 12:26:45@
四位并一位
- 1