Cod sursa(job #2074617)

Utilizator iulius510iulius alexandru iulius510 Data 24 noiembrie 2017 20:13:35
Problema Factorial Scor 100
Compilator c Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
int P;
int zero(int x)
{
     int p=5;
      int  S=0;
        while(x/p)
        {S+=x/p;
         p=p*5;}
         return S;
}
int cautare (int st,int dr)
{   int mij,t;
    mij=(st+dr)/2;
    t=zero(mij);
    if(st>dr)return -1;
    if(st==dr&&t==P) return mij;
    if(t>P) return cautare(st,mij-1);
    if (t<P) return cautare(mij+1,dr);
    return cautare(st,mij);
}


int main()
{   FILE *f,*g;
    f=fopen("fact.in","r");
    g=fopen("fact.out","w");
    fscanf(f,"%d",&P);
    if(P==0)
       {fprintf(g,"1");
        return 0;}

    fprintf(g,"%d",cautare(1,INT_MAX));


    return 0;
}