Cod sursa(job #876556)
Utilizator | Data | 11 februarie 2013 21:30:59 | |
---|---|---|---|
Problema | Factorial | Scor | 15 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.62 kb |
#include <iostream>
#include<fstream>
using namespace std;
int apar5(int i)
{
int ct=0, j;
for(j=5; j<=i; j*=5)
{
ct++;
}
return ct;
}
int main()
{
fstream in, out;
long long i;
int p, nr0;
in.open("fact.in", ios::in);
out.open("fact.out", ios::out);
in>>p;
nr0=0;
i=0;
if(p==0)
{
out<<1;
return 0;
}
while(nr0<p)
{
i+=5;
nr0+=apar5(i);
}
if(nr0==p)
{
out<<i;
return 0;
}
if(nr0>p)
{
out<<-1;
return 0;
}
}