Cod sursa(job #2131187)

Utilizator Alex_BubBuburuzan Alexandru Alex_Bub Data 14 februarie 2018 14:57:49
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.72 kb
#include <fstream>
#define ll long long

using namespace std;

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

ll nrz(ll x)
{
    ll k = 0;

    while(x > 4) {
        x /= 5;
        k += x;
    }
    return k;
}
int main()
{
    ll n, a;

    fin >> n;

    ll k = n;

    if(n == 0)
        fout << "1";
    else {
        bool ok = true;

        a = nrz(5 * k);

        int i = n + n - a;

        k = i;
        a = nrz(5 * k);
        while(a != n) {
             k += (n - a);
             a = nrz(5 * k);

             if(i == k) {
                 ok = false;
                 break;
             }
        }

        fout << ((ok) ? 5 * k : -1);
    }

    return 0;
}