Cod sursa(job #3141307)

Utilizator gugalcromMuntoiu Vlad-Ioan gugalcrom Data 13 iulie 2023 14:59:36
Problema Factorial Scor 5
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <bits/stdc++.h>
#pragma GCC optimize("O3")

using namespace std;

const unsigned int MAX=1e9;

unsigned int zero(unsigned int nr) {
    unsigned int cnt=0;
    for(unsigned int p=5; p<=nr; p*=5) {
        cnt += nr / p;
    }
    return cnt;
}

int main()
{
    freopen("fact.in" , "r" , stdin);
    freopen("fact.out" , "w" , stdout);
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);

    unsigned int P, s, d, m;

    s = 1;
    d = MAX;
    while(s < d) {
        m = (s+d) / 2;
        if(zero(m) < P) s = m+1;
        else d = m;
    }

    if(zero(s) == P) cout << s;
    else cout << -1;

    return 0;
}