program fibonachi; {$APPTYPE CONSOLE} uses SysUtils,Windows; type long=array[0..100000] of integer; var f1,f2,f3:long; n,i:integer; time:int64; function s(a,b:long):long; var c:long; os,i:integer; begin if a[0]>b[0] then c[0]:=a[0] else c[0]:=b[0]; os:=0; for i:=1 to c[0] do begin c[i]:=(a[i]+b[i]+os) mod 10; os:=(a[i]+b[i]+os) div 10; end; if os>0 then begin c[0]:=c[0]+1;c[c[0]]:=os;end; s:=c; end; begin readln(n); time:=GetTickCount; //f1:='1'; f2:='1'; f1[0]:=1;f1[1]:=1; f2[0]:=1;f2[1]:=1; for i:=3 to n+1 do begin //f3:=s3(f1,f2); f3:=s(f1,f2); //for j:=f3[0] downto j do write(f3[j]);writeln; readln; //for j:=0 to f2[0] do f1[j]:=f2[j]; //for j:=0 to f3[0] do f2[j]:=f3[j]; f1:=f2; f2:=f3; end; //writeln(f3); for i:=f3[0] downto 1 do write(f3[i]); writeln; time:=GetTickCount-time; writeln((time/1000):0:5); readln; end.