Cod sursa(job #1693481)

Utilizator GabiTulbaGabi Tulba-Lecu GabiTulba Data 23 aprilie 2016 10:59:55
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#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;
}