Cod sursa(job #1686548)
| Utilizator | Data | 12 aprilie 2016 12:13:23 | |
|---|---|---|---|
| Problema | Factorial | Scor | 15 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.44 kb |
#include <stdio.h>
FILE *in, *out;
int zero(int n){
int nrz = 0;
while(n>=5){
nrz += n/5;
n/=5;
}
return nrz;
}
int cmmnr(int p){
int i=0,pas = 1<<16;
while(pas != 0){
if(zero(i+pas) < p)
i+=pas;
pas/=2;
}
return 1+i;
}
int main()
{
unsigned int P;
in = fopen("fact.in" , "r");
fscanf(in , "%d" , &P);
out = fopen("fact.out" , "w");
fprintf(out, "%d" , cmmnr(P));
return 0;
}
