Mai intai trebuie sa te autentifici.
Cod sursa(job #12944)
Utilizator | Data | 5 februarie 2007 12:34:26 | |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | fpc | Status | done |
Runda | Arhiva de probleme | Marime | 0.82 kb |
var r1,p,i,p5,nr0,r,rest:longint;
f1,f2:text;
begin
assign(f1,'fact.in');
reset(f1);
assign(f2,'fact.out');
rewrite(f2);
read(f1,p);
i:=0;
p5:=1;
nr0:=0;
repeat
nr0:=nr0+p5;
i:=i+1;
p5:=p5*5;
until nr0+p5>p;
r:=p div nr0*p5;
rest:=p mod nr0;
i:=0;
p5:=1;
nr0:=0;
repeat
nr0:=nr0+p5;
i:=i+1;
p5:=p5*5;
until nr0+p5>rest;
r:=r+rest div nr0*p5;
r1:=r;
p:=p+1;
i:=0;
p5:=1;
nr0:=0;
repeat
nr0:=nr0+p5;
i:=i+1;
p5:=p5*5;
until nr0+p5>p;
r:=p div nr0*p5;
rest:=p mod nr0;
i:=0;
p5:=1;
nr0:=0;
repeat
nr0:=nr0+p5;
i:=i+1;
p5:=p5*5;
until nr0+p5>rest;
r:=r+rest div nr0*p5;
if r=r1 then writeln(f2,-1)
else writeln(f2,r1);
close(f1);
close(f2);
end.