Online JudgeProblem SetAuthorsOnline ContestsUser
Web Board
Home Page
F.A.Qs
Statistical Charts
Problems
Submit Problem
Online Status
Prob.ID:
Register
Update your info
Authors ranklist
Current Contest
Past Contests
Scheduled Contests
Award Contest
User ID:
Password:
  Register

帮我改进一下TLE的程序

Posted by xt at 2005-06-24 21:34:52 on Problem 1001
program pku1001;
var
  r:string[6];
  n:integer;
  t:longint;
function HiAdd(a,b:string):string;
var
  c:string;
  i,jw,j:integer;
begin
  while length(a)<length(b) do a:='0'+a;
  while length(a)>length(b) do b:='0'+b;
  jw:=0;c:='';
  for i:=length(a) downto 1 do begin
    j:=ord(a[i])-48+ord(b[i])-48+jw;
    jw:=j div 10;
    j:=j mod 10;
    c:=chr(j+48)+c;
  end;
  if jw<>0 then c:=chr(jw+48)+c;
  HiAdd:=c;
end;
function HiMul(a,b:string):string;
var
  i,xsws,s,j,jw,r,k:integer;
  sy,t,zsbf,xsbf,cs1,cs2,zz:string;
begin
  s:=0;xsws:=0;
  for i:=length(a) downto 1 do begin
    if a[i]='.' then begin xsws:=xsws+s;cs1:=copy(a,1,i-1)+copy(a,i+1,length(a)-

i);break;end;
    inc(s);
  end;
  s:=0;
  for i:=length(b) downto 1 do begin
    if b[i]='.' then begin xsws:=xsws+s;cs2:=copy(b,1,i-1)+copy(b,i+1,length(b)-

i);break;end;
    inc(s);
  end;
  sy:='';r:=-1;
  for i:=length(cs2) downto 1 do begin
    inc(r);t:='';jw:=0;
    for j:=length(cs1) downto 1 do begin
      s:=(ord(cs1[j])-48)*(ord(cs2[i])-48)+jw;
      jw:=s div 10;
      t:=chr(s mod 10+48)+t;
    end;
    if jw<>0 then t:=chr(jw+48)+t;
    for k:=1 to r do t:=t+'0';
    sy:=HiAdd(t,sy);
  end;
  while length(sy)<(xsws+1) do sy:='0'+sy;
  zsbf:=copy(sy,1,length(sy)-xsws);
  xsbf:=copy(sy,length(sy)-xsws+1,xsws);
  while zsbf[1]='0' do zsbf:=copy(zsbf,2,length(zsbf)-1);
  while xsbf[length(xsbf)]='0' do xsbf:=copy(xsbf,1,length(xsbf)-1);
  zz:=zsbf;
  if xsbf<>'' then zz:=zz+'.'+xsbf;
  HiMul:=zz;
end;
procedure HiPower(r:string;n:integer);
var
  i:integer;
  a,b:string;
begin
  a:=r;b:=a;
  for i:=1 to n do a:=HiMul(a,b);
  writeln(a);
end;
begin
  while not eof do begin
    readln(r,n);
    HiPower(r,n);
  end;
end.

Followed by:

Post your reply here:
User ID:
Password:
Title:

Content:

Home Page   Go Back  To top


All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator