Cod sursa(job #858969)

Utilizator nosurrender99Bura Bogdan nosurrender99 Data 19 ianuarie 2013 16:13:35
Problema Factorial Scor 95
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
using namespace std;

fstream f("fact.in" ,ios::in), g("fact.out", ios::out);

long p;

long retur (long);
long cautb(long,long);


int main()
{
    f>>p;
    if(p==1)
        g<<"0";
    else
    g<<cautb(1,500000000);

}

long retur(long a)
{
    long no=0;
    while(a>0)
    {
        no+=a/5;
        a/=5;
    }
    return no;
}

long cautb(long a, long b)
{
    long mi=(a+b)/2, aux=retur(mi);
    if(a==b && aux==p)
        return b;
    if (a==b && aux!=p)
        return -1;

    if (p<=aux) return cautb(a,mi);
    else return cautb(mi+1,b);
}