Cod sursa(job #2008899)
| Utilizator | Data | 7 august 2017 22:21:51 | |
|---|---|---|---|
| Problema | Factorial | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.64 kb |
#include <fstream>
#include <cmath>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
typedef unsigned long int uli;
int nrc(uli x)
{
int k=0,cif;
while(x)
{
cif=x%10;
if(cif==0)
{
k++;
}
x/=10;
}
return k;
}
uli fact(uli y)
{
uli fa=1;
for(uli i=1;i<=y;i++)
{
fa*=i;
}
return fa;
}
uli p,c,factor;
int main()
{
f>>p;
for(uli j=1;j<=pow(10,8);j++)
{
factor=fact(j);
c=nrc(factor);
if(c==p)
{
g<<j;
}
else if(c>=p)
{
g<<"-1";
}
}
f.close();
g.close();
}
