Cod sursa(job #2542780)

Utilizator baTTLe4u_15Nita Iulian baTTLe4u_15 Data 10 februarie 2020 16:25:23
Problema Factorial Scor 85
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <fstream>

using namespace std;

int nZero(int n)
{
    int nr=0,p=5;
 
    while(p<=n)
    {
        nr+=n/p;
        p*=5;
    }
 
    return nr;
}

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

int p;

int solve(int left, int right)
{
	if(left >= right)
		return -1;

	int mid = (left+right)/2;
	
	int rez = nZero(mid);
	if(rez == p)
		return mid;

	if(rez > p)
		solve(left, mid-1);
	else
		solve(mid+1, right);
}

int main()
{
	f >> p;
	int rez = solve(1, 2000000000);

	while(nZero(rez) == p)
		rez--;

	g << rez+1;
}