Pagini recente » Cod sursa (job #1171124) | Cod sursa (job #1961808) | Cod sursa (job #1585481) | Cod sursa (job #495640) | Cod sursa (job #1165788)
#include <fstream>
using namespace std;
unsigned fact(unsigned n)
{
unsigned a,z=0,m[2]={0,0};
for(unsigned i=2;i<=n;i++)
{
if(a%2!=0&&a%5!=0)
continue;
a=i;
while(a%10==0)
{
z++;
a/=10;
}
while(a%5==0)
{
m[0]++;
a/=5;
}
while(a%2==0)
{
m[1]++;
a/=2;
}
}
if(m[0]>=m[1])
z+=m[1];
else
z+=m[0];
return z;
}
int main()
{
unsigned P;
unsigned long long i;
bool exista=0;
ifstream f("fact.in");
f>>P;
f.close();
ofstream g("fact.out");
for(i=1;;i++)
if(fact(i)==P)
{
g<<i;
exista=1;
break;
}
if(!exista)
g<<-1;
g.close();
return 0;
}