Cod sursa(job #115971)

Utilizator ionescu88alex ionescu ionescu88 Data 17 decembrie 2007 15:26:31
Problema Nunta Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.92 kb
var fi,fo:text;
    n:integer;
    a,b,c:array[1..300]of byte;
    i,j:integer;
procedure calc;
var min,kl,sum:longint;
    rest:integer;
    uc:byte;
begin
  if i>j then min:=j
         else min:=i;
  rest:=0;
  for kl:=300 downto min do
    begin
      sum:=a[kl]+b[kl]+rest; uc:=sum mod 10; c[kl]:=uc; rest:=sum div 10; end;
  while rest<>0 do
    begin
      dec(min); c[min]:=rest mod 10; rest:=rest div 10; end;
  for kl:=j to 300 do a[kl]:=b[kl];
  i:=j;
  for kl:=min to 300 do b[kl]:=c[kl];
  j:=min;
end;
procedure solv(n:integer);
var ij:longint;
begin
  a[300]:=1; b[300]:=2; i:=300; j:=300;
  for ij:=3 to n do calc;
  for ij:=j to 300 do
    write(fo,c[ij]);
end;
begin
  assign(fi,'nunta.in'); reset(fi);
  assign(fo,'nunta.out'); rewrite(fo);
  read(fi,n);
  if n=1 then writeln(fo,'1')
   else
    if n=2 then writeln(fo,'2')
      else
       solv(n);
  close(fi);
  close(fo);
end.