Cod sursa(job #1834311)
| Utilizator | Data | 24 decembrie 2016 13:01:16 | |
|---|---|---|---|
| Problema | Factorial | Scor | 50 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.59 kb |
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
int cinci(int x)
{
int y,nr,NR;
nr=5;
NR=0;
while(nr<x)
{
y=x;
NR=NR+y/nr;
nr=nr*5;
}
return NR;
}
int main()
{
int i,nr,p,m,t,j,ok;
long long n;
fin>>n;
i=1;
j=100000000;
ok=0;
while(i<=j && ok==0)
{
m=(i+j)/2;
t=cinci(m);
if(t==n) {ok=1; fout<<m-m%5;}
else if(t>n) j=m-1;
else i=m+1;
}
if(ok==0) fout<<-1;
return 0;
}
