Cod sursa(job #1980357)

Utilizator MihneaMihnea300Mihnea Andreescu MihneaMihnea300 Data 12 mai 2017 22:32:39
Problema Factorial Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <fstream>
using namespace std;
ifstream cin("fact.in");
ofstream cout("fact.out");
int f(int n)
{
    int p=5,s=0;
    while(p<=n)
    {
        s=s+n/p;
        p=p*5;
    }
    return s;
}
int main()
{
    int p;
  cin>>p;
  if(p==0)
    cout<<1;
  else
  {
    int st=1,dr=p*5,ans=0;
    while(st<=dr)
    {
      int mij=(st+dr)/2;
      if(f(mij)<=p)
      {
        ans=mij;
        st=mij+1;
      }
      else
        dr=mij-1;
    }
    if(f(ans)==p)
      cout<<ans-ans%5;
    else
      cout<<-1;
  }
    cin.close();
    cout.close();
    return 0;
}