Pagini recente » Cod sursa (job #170068) | Cod sursa (job #2087568) | runda/suceavaftw | Cod sursa (job #111431) | Cod sursa (job #279852)
Cod sursa(job #279852)
#include<fstream.h>
ifstream intrare("fact.in");
ofstream iesire("fact.out");
long p,n;
int cinci(long k)
{
int count=1;
long act=25;
while(k%act==0)
{
act=act*5;
count++;
}
return count;
}
int main()
{
intrare>>p;
if(p==0)iesire<<"1";
else
{
long act=5,nr=1;
if(p>=100000000){nr=100000000;act=400000015;}
else if(p>=90000000){nr=90000000;act=360000015;}
else if(p>=80000000){nr=80000000;act=320000015;}
else if(p>=70000000){nr=70000000;act=280000015;}
else if(p>=60000000){nr=60000000;act=240000020;}
else if(p>=50000000){nr=50000000;act=200000010;}
else if(p>=40000000){nr=40000000;act=160000015;}
else if(p>=30000000){nr=30000000;act=120000010;}
else if(p>=20000000){nr=20000000;act=80000015;}
else if(p>=10000000){nr=10000000;act=40000010;}
while(nr<p)
{
act+=5;
nr+=cinci(act);
}
if(nr==p)iesire<<act;
else iesire<<"-1";
}
return 0;
}