Cod sursa(job #1023139)

Utilizator tavi.belu1994FMI Belu Andrei Octavian tavi.belu1994 Data 6 noiembrie 2013 15:18:38
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <cstdio>
FILE *f,*g;

using namespace std;

int cbin(long left, long right, long P)
{
    while(left<=right)
    {
        long mid=(left+right)/2;
        long x,y;
        x=0;
        y=5;
        while(y<=mid)
        {
            x=x+mid/y;
            y=y*5;
        }
        if(x==P && mid%5==0)
        {
            return mid;
        }
        else
        {
            if(x<P)
                left=mid+1;
            else
                right=mid-1;
        }
    }
    return -1;
}

int main(){
    f=fopen("fact.in","r");
    g=fopen("fact.out","w");
    long P;
    fscanf(f,"%ld",&P);
    if(!P)
        fprintf(g,"1");
    else
        fprintf(g,"%d",cbin(0,5*P,P));
    fclose(f);
    fclose(g);
    return 0;
}