Cod sursa(job #1320646)

Utilizator RathebaSerbanescu Andrei Victor Ratheba Data 18 ianuarie 2015 11:29:27
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb
#include <fstream>
using namespace std;

int nz(int x)
{
    int rez = 0, ci=5;
    while(x/ci > 0)
    {
        rez += x/ci;
        ci *= 5;
    }
    return rez;
}

ifstream fin("fact.in");
ofstream fout("fact.out");
int main()
{
    int i, st, dr, mij, p;
    fin>>p;
    st = 1; dr = p*5;
    while(st <= dr)
    {
        mij = (st+dr)/2;
        if(nz(mij) < p)
            st = mij+1;
        else
            dr = mij-1;
    }
    if(nz(st) == p)
        fout<<st<<'\n';
    else
        fout<<-1<<'\n';
    return 0;
}