Cod sursa(job #1450914)

Utilizator cosmin.vasilache95Vasilache Cosmin Teodor cosmin.vasilache95 Data 15 iunie 2015 09:52:17
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f("fact.in");
ofstream g("fact.out");

long long zero(long long n)
{
    int nr=0;
    while(n>=5)
    {
        nr+=n/5;
        n/=5;
    }
    return nr;
}

int main()
{
	long long i=0,p,n;
	f>>p;
	long long mij;
	long long dr = 1<<30; // 2^30
	long long st = 0;
	int ok = 0;
	while(st<=dr)
	{
		mij =(st+dr)/2;
		if( zero(mij) == p)
		{
			ok = 1;
			break;
		}
		if( zero(mij) > p )
			dr = mij - 1;
		if( zero(mij) < p )
			st = mij + 1;			   
	}

	if(ok == 0)
		g<<-1;
	else
		g<< mij - mij%5;


	g.close();



	return 0;
}