Cod sursa(job #1187150)

Utilizator MihailPJack ONeill MihailP Data 17 mai 2014 19:09:24
Problema Factorial Scor 85
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.68 kb
#include<fstream>
using namespace std;
long fact(long long N)
{
    long long s=0,p=5;
    while(N/p!=0)
    {
        s=s+N/p;
        p=p*5;
    }
    return s;
}
int main()
{
    fstream f,g;
    f.open("fact.in",ios::in);
    g.open("fact.out",ios::out);
    long long N=400000015,p,l,r,m,rez;
    int ok=0;
    l=1;
    f>>p;
    r=5*p;
    if(p==0)
        g<<"1";
    else{
    while(r+1!=l && ok==0)
    {
        m=(r+l)/2;
        rez=fact(m);
        if(rez>p)
        r=m;
        if(rez<p)
        l=m;
        if(rez==p)
        {
            rez=m;
            ok=1;
        }



    }
    while(rez%5!=0)
        rez--;
    g<<rez;}


}