Pagini recente » Cod sursa (job #1849535) | Cod sursa (job #2117024) | Cod sursa (job #1038031) | Cod sursa (job #406516) | Cod sursa (job #2720579)
#include <stdio.h>
#include <math.h>
int fact(int p);
int sumare(long long n);
int main(){
int p;
FILE *f;
f=fopen("fact.in", "r");
fscanf(f, "%d", &p);
fclose(f);
f=fopen("fact.out", "w");
fprintf(f, "%d", fact(p));
fclose(f);
return 0;
}
int fact(int p){
int sum;
long long n=4*p;
while(p){
sum=sumare(n);
if(sum>p){
return -1;
}
else if(sum == p){
return n;
}
else{
n+=5;
}
}
return 1;
}
int sumare(long long n){
int i=1, rez=0;
while(n>=pow(5,i)){
rez+=floor(n/pow(5,i));
i++;
}
return rez;
}