Pagini recente » Cod sursa (job #826174) | Cod sursa (job #954010) | Cod sursa (job #40609) | Cod sursa (job #3296096) | Cod sursa (job #598347)
Cod sursa(job #598347)
#include <stdio.h>
// nr natural minim pt care N! are P zerouri;
int main()
{
freopen("fact.in", "r", stdin);
freopen("fact.out", "w", stdout);
long int p, n = 0, n2 = 0, p2 = 0, p1 = 0, k = 1, sup;
scanf("%ld", &p);
if(p == 0)
{
printf("1");
return 0;
}
while(k)
{
k = 0;
n2 = 1;
p2 = 0;
while((p1 + p2*5+1) <= p)
{
k = 1;
p2 = p2 * 5 + 1;
n2 = n2 * 5;
}
sup = n + n2 * 5;
p1 = p1 + p2;
if(n != 1)
n = n + n2;
if(p == p1)
{
if(n >= sup)
{
printf("-1");
return 0;
}
printf("%ld", n);
return 0;
}
}
return 0;
}