Cod sursa(job #2709507)

Utilizator CzryourbroCezar Enciu Czryourbro Data 20 februarie 2021 12:58:40
Problema Factorial Scor 55
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("fact.in");
ofstream fout("fact.out");

int legrange(long long n) {
	long long ans = 0;
	long long p = 5;
	while( p<= n) {
	ans += n/p;
	p *= 5;
}
return ans;
}

int main()
{
    long long p,sol=0,ok=0;
    fin>>p;
long long  st = 0, dr = 100000001;
while(st <= dr) {
	long long mij = (st + dr)/2;
	if(legrange(mij) < p) {
		st = mij+1;
}
else
	if(legrange(mij) > p) {
		dr = mij-1;
}
else
	if(legrange(mij) ==p) {
	sol = mij;
	dr = mij-1;
	ok=1;
}
}
if(ok==1)
fout<<sol;
else
    fout<<-1;
}