Cod sursa(job #115979)

Utilizator Pepelea_FlaviuFlaviu Pepelea Pepelea_Flaviu Data 17 decembrie 2007 15:31:38
Problema Nunta Scor 100
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.99 kb
var fi,fo:text;
    n:integer;
    a,b,c:array[1..300]of byte;
    i,j:integer;
procedure calc;
var min,kl:longint;
    sum,rest:int64;
    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.