Cod sursa(job #222050)

Utilizator mISHOOOmISHOOO mISHOOO Data 19 noiembrie 2008 19:03:57
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <stdio.h>
#define NMAX 50000

FILE *fi = fopen("fact.in", "r");
FILE *fo = fopen("fact.out", "w");

unsigned long P, i, k=0;
unsigned int n5(unsigned long N) {
	unsigned int k = 0;
	while (N%5==0) { k++; N/=5; }
	return k;
}

unsigned int V[NMAX];

int main() {
	fscanf(fi, "%ld", &P);

	if (P==0) fprintf(fo, "1\n");
	else {
			V[0] = 0;
			i = 0;
		do { i+=5; 
			 k++;
		     V[k]=V[k-1]+n5(i);	
		   } while (V[k]<P);
		if (V[k]==P) fprintf(fo, "%ld\n", k*5);
		        else fprintf(fo, "-1\n");
	}

	fclose(fi);
	fclose(fo);

	return 0;
}