Cod sursa(job #1562183)

Utilizator cicero23catalin viorel cicero23 Data 4 ianuarie 2016 21:18:00
Problema Factorial Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <iostream>

using namespace std;
unsigned long long m,p,y,u,x,s,ok;
long long nrzerouri(int m)
{
    int s,x,p;
   s=0;
   x=m/2;
   while(x!=0)
   {
       s+=x;
       x/=2;
   }
   p=0;
   x=m/5;
   while(x!=0)
   {
       p+=x;
       x/=5;
   }
   if(p<s) return p;
   else return s;
}

int main()
{
    cin>>p;
    y=5,u=5*p;
    ok=0;
    while(y<=u&&ok==0)
    {
        m=(y+u)/2;
        cout<<nrzerouri(m)<<" ";
        if(nrzerouri(m)==p)
        {
            ok=1;
            break;
        }
        else if(nrzerouri(m)<p)
        y=m+1;
        else u=m-1;
    }
    if(ok==1) cout<<m;
    else cout<<-1;
    return 0;
}