Cod sursa(job #1098592)

Utilizator AndreeaBaltaBalta Andreea Cristina AndreeaBalta Data 4 februarie 2014 22:04:53
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>

using namespace std;

long long nrdezerouri(long long x){
    long long nrz = 0;
    while(x > 4){
        nrz = nrz + x / 5;
        x = x / 5;
    }
    return nrz;
}

int main()
{
    FILE *in,*out;
    in = fopen("fact.in","r");
    out = fopen("fact.out","w");
    long long i = 0, pas = 1<<30, p;
    fscanf(in,"%lld",&p);
    while(pas != 0)
    {
        if(nrdezerouri(i + pas) < p)
            i += pas;
        pas /= 2;
    }
    if(nrdezerouri(i + 1) == p)
        fprintf(out,"%lld", i + 1);
    else
        fprintf(out,"-1");
    return 0;
}