Cod sursa(job #1645741)

Utilizator edi_laitinLaitin Eduard edi_laitin Data 10 martie 2016 13:34:28
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream fin("fact.in");
ofstream fout("fact.out");

int nr(int n)
{
    int p=5,nr=0;
    while(p<=n)
    {
        nr=nr+n/p;
        p*=5;
    }
    return nr;
}
int main()
{
    int d,left=1,right=1000000000,mid,k,sol;
  fin>>k;
    while(left<=right)
    {mid=(left+right)/2;
        d=nr(mid);
        if(d>=k)
        { sol=mid;
           right=mid-1;
        }
        else if(d<k) left=mid+1;
    }
     if(nr(sol)==k)
        fout<<sol;
    else
        fout<<"-1";
    return 0;
}