Cod sursa(job #1808589)
| Utilizator | Data | 17 noiembrie 2016 21:10:22 | |
|---|---|---|---|
| Problema | Factorial | Scor | 25 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.72 kb |
#include <iostream>
#include <fstream>
#include <math.h>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");
long long int p,n=0;
int putere5(long long int k)
{
int k1=0;
while(k%5==0)
{
k1++;
k=k/5;
}
return k1;
}
int main()
{
fin>>p;
long long int i,j,p5;
if(p==0)
fout<<1;
else
{
for(i=1;i<=p&&n<p;i++)
if(i%5!=0)
{n=n+1;
p5=i;}
else
{
n=n+putere5(i)+1;
p5=i;
}
if(n==p)
fout<<p5*5;
else
fout<<-1;
}
fin.close();
fout.close();
return 0;
}
