Cod sursa(job #71744)
| Utilizator | Data | 11 iulie 2007 15:24:48 | |
|---|---|---|---|
| Problema | Factorial | Scor | 10 |
| Compilator | fpc | Status | done |
| Runda | Arhiva de probleme | Marime | 0.55 kb |
var f,g:text;
p,n,cifra,nr:longint;
gasit:boolean;
begin
assign(f,'fact.in'); reset(f);
assign(g,'fact.out'); rewrite(g);
read(f,p);
n:=p*5;
gasit:=false;
nr:=5;
while n div nr>0 do begin
cifra:=cifra+n div nr;
nr:=nr*5;
end;
while (gasit=false) and (cifra>=p) do begin
nr:=5;
cifra:=0;
while n div nr>0 do begin
cifra:=cifra+n div nr;
nr:=nr*5;
end;
if cifra=p then gasit:=true
else n:=n-(cifra-p)*5;
end;
if gasit=true then write(g,cifra)
else write(g,'-1');
close(g);
end.