Cod sursa(job #950265)

Utilizator dpopovicDana Popovici dpopovic Data 16 mai 2013 14:31:40
Problema Factorial Scor 50
Compilator c Status done
Runda Arhiva de probleme Marime 0.68 kb
#include <stdio.h>
#include <stdlib.h>
#include <time.h>

long get_count(int P) {
	long count=0, i, N, tmp;
	N = 5*P;
	i=5;
	while (i<N && count<P) {
		count++;
		tmp = i/5;
		//printf("i=%ld  count=%ld   tmp = %ld\n", i, count, tmp);
		while(tmp%5==0 && tmp>0) {
			count++;
			tmp = tmp / 5;
		}
		if(count<P)
			i+= 5;
	}
	if(count>P)
		return -1;
	return i;
}

int main(int argc, char *argv[]) {
	
	long P, N, h;
	
	clock_t start = clock();
	
	FILE *f1 = fopen("fact.in", "r");
	fscanf(f1, "%ld", &P);
	fclose(f1);	

	f1 = fopen("fact.out", "w");
	
	N = get_count(P);

	fprintf(f1, "%ld\n", P>0?N:1);
	fclose(f1);	
	
	printf ( "%f\n", ( (double)clock() - start ) / CLOCKS_PER_SEC );
	
	return 0;
}