Pagini recente » Cod sursa (job #2733294) | Cod sursa (job #2739436) | Cod sursa (job #585631) | Cod sursa (job #1115244) | Cod sursa (job #606533)
Cod sursa(job #606533)
#include <iostream>
#include <fstream>
using namespace std;
unsigned long n,p;
unsigned long numar_zerouri (unsigned long x)
{
unsigned long zero=0;
while (x/5>0)
{
zero+=x/5;
x/=5;
}
return zero;
}
long cautare (unsigned long left, unsigned long right)
{
if (right==left) return right;
else
{
unsigned long mijloc=(left+right)/2, zerouri=numar_zerouri(mijloc);
// printf("%d<>%d %d: %d=?%d\n", left,right,mijloc, zerouri, p);
if (zerouri>=p) cautare (left, mijloc-1);
else if (zerouri<=p) cautare (mijloc+1, right);
}
}
int main()
{
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
scanf("%d", &p);
printf("%d", cautare(1, 80000));
return 0;
}