Cod sursa(job #1169338)

Utilizator dorin31Geman Dorin Andrei dorin31 Data 10 aprilie 2014 22:44:03
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <iostream>
#include <fstream>

using namespace std;

int first, last, p, mid;

int nrzero(int x)
{
	int p5 = 5;
	int d = 0;
	while (x/p5 != 0)
        {
            d += (x/p5);
            p5*=5;
        }
	return d;
}

ifstream fin("fact.in");
ofstream fout("fact.out");

int main()
{
	fin>>p;
	first = 1; last =5*p;
	while (first<=last)
        {
            mid = first + (last-first)/2;
            if (nrzero(mid)<p)
                first = mid + 1;
            else last = mid - 1;
        }
	if(nrzero(first)==p)
		fout<<first;
	else fout<<"-1";
	return 0;
}