Cod sursa(job #1190019)

Utilizator BogdanisarBurcea Bogdan Madalin Bogdanisar Data 24 mai 2014 12:18:20
Problema Factorial Scor 90
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include<fstream>
#include<iostream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int P,cifre,N=5,k;

int bin(int, int, int);
int put(int);

int main()
{
    f>>P;
    if (P==0) g<<1;
    else
    g<<bin(0,5*P,P);
    f.close();g.close();
    return 0;
}

int put(int m)
{
    int c=5,s=0;
    while (c<=m)
    {
        s+=(m/c);
        c*=5;
    }
    return s;
}


int bin(int a,int b,int P)
{
    //cout<<"a="<<a<<" b="<<b<<'\n';
    int mij=(a+b)/2;
    if (a>b) return 0;
    else if (put(mij)==P && mij%5==0) return mij;
    else if (put(mij)<P) return bin(mij+1,b,P);
    else return bin(a,mij-1,P);
}