Cod sursa(job #1273483)

Utilizator vlad00Vlad Stoleru vlad00 Data 22 noiembrie 2014 15:28:02
Problema Factorial Scor 35
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.67 kb
#include <fstream>
using namespace std;
ifstream f("fact.in");
ofstream g("fact.out");
int functie(long N)
{
    int k=5,S=0;
    while (k<=N)
    {
        S+=N/k;
        k*=5;
    }
    return S;
}
int main()
{
    int st=1,dr=20000000,x,p,m=1,nr=-1,a;
    f>>p;
    if(p==0) g<<1<<'\n';
    else
    {
        while(st<=dr)
        {
            x=(st+dr)/2;
            a=functie(x);
            if(a==p)
            {
                nr=x-x%5;
                break;
            }
            else  {
                    if(a<p) st=x+1;
                        else dr=x-1;
                    }
        }
        g<<nr;
    }
    return 0;
}