Cod sursa(job #1803906)

Utilizator rares1012Rares Cautis rares1012 Data 12 noiembrie 2016 00:02:50
Problema Factorial Scor 10
Compilator c Status done
Runda Arhiva de probleme Marime 0.59 kb
#include <stdio.h>
#include <stdlib.h>

inline int put5(int n)
{
    int s=0;
    while(n>0)
    {
        n=n/5;
        s+=n;
    }
    return s;
}

int main()
{
    int n,i,p,k;
    FILE*fi,*fo;
    fi=fopen("fact.in","r");
    fo=fopen("fact.out","w");
    fscanf(fi,"%d",&n);
    i<<28;
    p=0;
    while(i>0)
    {
        if(put5(p+i)<=n)
        {
            p+=i;
        }
        i/=2;
    }
    while(put5(p)>=n)
        p--;
    if(put5(p+1)==n)
        fprintf(fo,"%d",p+1);
    else fprintf(fo,"-1");
    fclose(fi);
    fclose(fo);
    return 0;
}