Pagini recente » Cod sursa (job #1423117) | Cod sursa (job #1687385) | Cod sursa (job #2564961) | Cod sursa (job #909917) | Cod sursa (job #988628)
Cod sursa(job #988628)
#include<stdio.h>
int N, P;
int zeros(int x, int div){
if(div > x)
return 0;
else
return x/div + zeros(x, div * 5);
}
int BinarySearch(int left, int right, int power){
int mid = (left + right)/2;
if(left > right)
return -1;
else
if (zeros(mid, 5) == power && mid % 5 == 0)
return mid;
else
if(zeros(mid, 5) < power)
return BinarySearch(mid + 1, right, power);
else
return BinarySearch(left, mid - 1, power);
}
int main (){
FILE *pf, *pg;
pf = fopen("fact.in", "r");
pg = fopen("fact.out", "w");
fscanf(pf, "%d", &P);
if(P==0)
N=1;
else
N = BinarySearch(0, 5 * P, P);
fprintf(pg, "%d", N);
return 0;
}