Cod sursa(job #843979)

Utilizator crysstyanIacob Paul Cristian crysstyan Data 28 decembrie 2012 17:47:31
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include<fstream>
using namespace std;
int p;
int nrzero(int val)
{int rez=0;

   do
{
    val/=5;
    rez+=val;
}
while (val/5!=0);
return rez;

}
    int caut(int st, int dr)
    {
        int val,med;
        while(st<=dr)
        {
            med=dr-(dr-st)/2;
            val=nrzero(med);
            if (val>=p)
            dr=med-1;
            else
            st=med+1;
        }
        val=nrzero(med);
        if (val<p)
        {
            med++;
            val=nrzero(med);
        }
        if (val==p)
            return med;
            else
            return -1;
    }



    int main()
{
    ifstream f("fact.in");
    ofstream g("fact.out");
    int sol;
    f>>p;
    if (p==0)
        sol=1;
    else
    if(p==1)
        sol=5;
    else
        sol=caut(1,5*p);
        g<<sol;
        return 0;

}