Cod sursa(job #190144)

Utilizator AndreiDDiaconeasa Andrei AndreiD Data 20 mai 2008 10:53:32
Problema Patrate2 Scor 10
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.9 kb
var dim,n,putere,nou,rest,i,k,j,x,inv:longint;
rez,rez2:array[1..10000] of integer;
rez1:array[1..3] of byte;
f:text;
begin
assign(f,'patrate2.in');reset(f);
read(f,n);
close(f);
putere:=0;
dim:=1;
rez[dim]:=1;
repeat
rest:=0;
for i:=1 to dim do begin
nou:=rez[i]*2+rest;
rest:=nou div 10;
rez[i]:=nou mod 10;
end;
if rest<>0 then begin
inc(dim);
rez[dim]:=rest;
end;
inc(putere);
until putere=n*n;
i:=1;
x:=n;
inv:=0;
repeat
inc(inv);
rez1[i]:=x mod 10;
inc(i);
x:=x div 10;
until x=0;
k:=0;
for j:=dim downto 1 do begin
    for i:=inv downto 1 do
    rez2[inv-i+1+k]:=rez2[inv-i+1+k]+rez[j]*rez1[i];
    inc(k);
    end;
for i:=1 to inv+dim-2 do
    if rez2[i] div 10<=10 then begin
       rez2[i+1]:=rez2[i+1]+(rez2[i] div 10);
       rez2[i]:=rez2[i] mod 10;
       end;
assign(f,'patrate2.out');rewrite(f);
for i:=1 to inv+dim-1 do
write(f,rez2[i]);
close(f);
end.