Cod sursa(job #793221)

Utilizator tudorv96Tudor Varan tudorv96 Data 2 octombrie 2012 12:45:31
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.84 kb
#include <fstream>
#include <vector>

using namespace std;

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

int n;
int zero;
int nr, aux;
unsigned int mxp;
int check;

int main ()
{
    fin >> n;
    vector<int> z(n);
    for (unsigned int i = 0; i < z.size(); ++i)
        z[i] = 1;
    aux = n;
    while (aux != 0)
    {
        mxp++;
        aux = aux / 5;
    }
    for (unsigned int j = 1; j <= mxp; ++j)
        for (unsigned int i = 5 * j - 1; i < z.size(); i = i + 5 * j)
            z[i]++;
    aux = 0;
    if (n == 0)
    fout << "1";
    else
    {
       while (zero < n)
       {
           zero = zero + z[aux];
           aux++;
       }
       if (zero == n)
            fout << aux * 5;
        else
        fout << "-1";
    }
    fin.close ();
    fout.close ();
    return 0;
}