Pagini recente » Cod sursa (job #431839) | Cod sursa (job #1618160) | Cod sursa (job #1905502) | Cod sursa (job #2654537) | Cod sursa (job #1693481)
#include <fstream>
#include <bitset>
#include <cmath>
using namespace std;
ifstream in("fact.in");
ofstream out("fact.out");
unsigned long long pw[1000]={},n,S=0;
bool prop=true,imp=false;
int main()
{
in>>n;
pw[1]=1;
int i=1;
while(pw[i]<n)
{
i++;
pw[i]=pw[i-1]*5+1;
}
if(pw[i]!=n)
i--;
if(n==0)
prop=false;
while(n>0)
{
if(pw[i]<=n)
{
n-=pw[i];
S+=pow(5,i+0.0f);
}
else
i--;
if(n%5==0&&n>0)
{
n=0;
imp=true;
out<<-1;
}
}
if(prop&&!imp)
out<<S;
else if(!imp)
out<<1;
return 0;
}