Cod sursa(job #169169)

Utilizator DanielGGlodeanu Ioan Daniel DanielG Data 1 aprilie 2008 12:12:52
Problema Nunta Scor 0
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.7 kb
type nu=array[0..2000] of qword;
var a,b,c:nu;
nr,n,i:longint;
f,g:text;
rr,r:qword;
function max(X,Y:integer):integer;
begin
if x>y then max:=x
else max:=y;
end;

begin
assign(f,'nunta.in');reset(f);
assign(g,'nunta.out');rewrite(g);
read(f,n);
a[0]:=1;
b[0]:=1;
a[1]:=1;
b[1]:=2;
nr:=2;
while nr<>n do
begin
c[0]:=max(a[0],b[0]);
for i:=c[0] downto b[0] do
begin
rr:=(a[i]+b[i]+r) div 100000000000000000000;
c[i]:=(a[i]+b[i]+r) mod 100000000000000000000;
r:=rr;
end;
if r>0 then
begin
inc(c[0]);
c[c[0]]:=r;
inc(a[0]);
inc(b[0]);
end;
for i:=1 to c[0] do
begin
a[i]:=b[i];
b[i]:=c[i];
end;
inc(nr);
end;
for i:=b[0] downto 1 do write(g,c[i]);
close(f);
close(g);
end.