Cod sursa(job #2710379)

Utilizator Ana100Ana-Maria Tomoiala Ana100 Data 22 februarie 2021 15:24:21
Problema Factorial Scor 15
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>

using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int n,v[10001];

int legrange_5(int n) {
	int p = 5;
	int sol = 0;
while( n>= p) {
sol += n/p;
p *= 5;
}
return sol;
}

int main() {
    long long  p,k,ans,mij,st = 0,dr = 10000001;
cin >> k;
while(st <= dr) {

    int mij = (st + dr) >> 1;
    if(legrange_5(mij) < k) {
        st=mij+1;
    }
    else if(legrange_5(mij) > k) {
        dr = mij-1;
    }
    else   if(legrange_5(mij) ==k) {
        ans = mij;
        if(mij==1)
            break;
        dr = mij-1;
    }
}
if(legrange_5(ans)!=p)
    cout<<-1;
else
    cout << ans;
}