Cod sursa(job #290202)

Utilizator TamasionutzIoan-Cornel Tamas Tamasionutz Data 27 martie 2009 16:52:40
Problema Factorial Scor 5
Compilator fpc Status done
Runda Arhiva de probleme Marime 0.91 kb
{Se da numarul 'P'. Sa se afle cel mai mic 'n' care indeplineste conditia ca
 N! sa aiba 'p' 0 la sfarsit}

var n,p:longint;
    ok:boolean;
    f:text;
function catizero(x:longint):longint;
var k:longint;
begin
     k:=0;
     while x mod 5 = 0 do
           begin
                Inc(k); x:=x div 5;
           end;
    catizero:=k;
end;

function nfact(x:longint):longint;
var k,suma:longint;
begin
     k:=5; suma:=0;
     while k<=x do
           begin
           suma:=suma+catizero(k);
           Inc(k,5);
           end;
     nfact:=suma;
end;

begin
     assign(f,'fact.in'); reset(f);
     n:=0; ok:=false;
     read(f,p); close(f);
     Assign(f,'fact.out'); rewrite(f);
     if p=0 then write(f,1)
     else
     while ok=false do
           begin
                N:=N + 2;
                if nfact(n)=p then begin write(f,n); ok:=true;  end;
           end;
     close(f);
end.