Cod sursa(job #317252)

Utilizator nod_softwareBudisteanu Ionut Alexandru nod_software Data 22 mai 2009 22:35:06
Problema Factorial Scor 20
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.95 kb
program fact;
{$APPTYPE CONSOLE}
uses
  SysUtils;
var fin,fout:text;
    i,j,n,m,p,aux:longint;
{*--------------------------------------------------------*}
function bin(l,r:longint):longint;
var mij,zero:longint;
begin
    mij:=(l+r) div 2;
    if l > r then bin:=-1
    Else
    begin

        zero:=0;
        for j:=5 to mij do
        begin
          aux:=j;
          while aux mod 5 = 0 do
          begin
              inc(zero);
              aux:=aux div 5;
          end;
        end;

        if zero = p then bin:=mij
        Else
           if p < zero then bin:=bin(1,mij-1)
           Else bin:=bin(mij+1,r);
    end;
end;
{*--------------------------------------------------------*}
begin
    assign(fin,'fact.in'); reset(fin); assign(fout,'fact.out'); rewrite(fout);

    readln(fin,p);
    if p = 0 then writeln(fout,1)
    Else writeln(fout,bin(0,maxlongint div 10000));

    close(fin); Close(fout);
end.