Pagini recente » Borderou de evaluare (job #1368921) | Borderou de evaluare (job #1638050) | Borderou de evaluare (job #1986851) | Borderou de evaluare (job #1988262) | Cod sursa (job #2000550)
#include <bits/stdc++.h>
using namespace std;
int p,l,r,mid;
int zero(int n)
{
int r=0;
while (n)
{
r+=n/5;
n/=5;
}
return r;
}
int main()
{
ifstream cin("factorial.in");
ofstream cout("factorial.out");
cin>>p;
if (!p) return cout<<1,0;
l=1; r=0x3f3f3f3f;
while (l<=r)
{
mid=(l+r)/2;
int zr=zero(mid);
if (zr==p)
{
while (zero(mid-1)==p) mid--;
return cout<<mid,0;
}
else if (zr>p) r=mid-1; else l=mid+1;
}
cout<<-1;
}