Cod sursa(job #1463125)

Utilizator ramhackNastase Ramon ramhack Data 20 iulie 2015 09:42:52
Problema Factorial Scor 15
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <cstdio>
#include <math.h>

using namespace std;

const unsigned long MAX = 100000000;


int nrZero(unsigned long N) {

	unsigned long nr = 0;
	int result = 0;

	for(unsigned long i = 5; i <= N; i+=5) {
		nr = i;

		while(nr % 5 == 0) {
			nr /= 5;
			result++;
		}
	}

	return result;
}

int main(int argc, char const *argv[])
{
	FILE *fIn,*fOut;

	if((fIn = fopen("fact.in", "r")) == NULL) {
		fprintf(stderr, "Can't open file\n");
		return 0;
	}

	fOut = fopen("fact.out","w");
	int P, res;

	fscanf(fIn,"%d", &P);

	if(P == 0) {
		res = 1;
		fprintf(fOut, "%d\n", res);
		return 0;
	}

	for(unsigned long i = 1; ; ++i) {

		res = nrZero(i);
		
		if(res == P) {
			cout << i << endl;
			fprintf(fOut, "%d\n", i);
			break;
		}
	}

	fclose(fOut);
	fclose(fIn);

	return 0;
}