Pagini recente » Cod sursa (job #2042885) | Cod sursa (job #2932072) | Cod sursa (job #2514945) | Istoria paginii utilizator/suxxxess | Cod sursa (job #893468)
Cod sursa(job #893468)
#include <iostream>
#include <fstream>
using namespace std;
ifstream in ("fact.in");
ofstream out("fact.out");
int const N=20;
long long n,p,a,pow[N],zero[N];
int main()
{
in>>p; pow[1]=5; zero[1]=1;
for(int i=2;i<N;i++)
{
pow[i]=5*pow[i-1];
zero[i]=5*zero[i-1]+1;
}
for(int i=N-1;i>0;i--)
if(p>=zero[i])
{
a=p/zero[i];
if(a>=5){out<<"-1\n";return 0;}
n+=a*pow[i];
p=p%zero[i];
}
if(n==0){out<<"1\n";}
else out<<n<<"\n";
return 0;
}