Cod sursa(job #1424854)

Utilizator Andrei501Clicinschi Andrei Andrei501 Data 25 aprilie 2015 16:20:28
Problema Factorial Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int i=0;

int zero (int n)
{
    int nr=0;
    while (n>=5)
    {
        nr+=n/5;
        n/=5;
    }
    return nr;
}

void cb (int p)
{
    i=0;
    int pas=1<<30;
    while (pas!=0)
    {
        if (zero(i+pas)<p)
        {
            i+=pas;
        }
        pas>>=1;
    }
}

int main()
{
    FILE *fin,*fout;
    fin=fopen ("fact.in","r");
    fout=fopen ("fact.out","w");

    int p;
    fscanf (fin,"%d",&p);

    cb (p);
    i++;

    if (zero(i)!=p)
    {
        fprintf (fout,"%d",-1);
    }
    else
    {
        fprintf (fout,"%d",i);
    }

    fclose (fin);
    fclose (fout);
    return 0;
}