Cod sursa(job #2006720)

Utilizator arcoC. Nicolae arco Data 31 iulie 2017 13:27:00
Problema Factorial Scor 15
Compilator c Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <stdio.h>
#include <stdlib.h>
#include <stdbool.h>
#include <string.h>
#include <math.h>

typedef unsigned int uint;

uint get_fzeros(uint n);

int main(void)
{
	FILE *in = fopen("fact.in", "r");
	FILE *out = fopen("fact.out", "w");
	if(in != NULL && out != NULL)
	{
		uint n;
		fscanf(in, "%u%*c", &n);
		uint i = 1;
		while(1)
		{
			// printf("%u %u\n", i, get_fzeros(i));
			if(get_fzeros(i) == n)
			{
				fprintf(out, "%u\n", i);
				break;
			}
			else
			{
				i++;
			}
		}

		fclose(in);
		fclose(out);
	}
	else
	{
		printf("Error\n");
	}

	return 0;
}

uint get_fzeros(uint n)
{
	uint count = 0;
	uint p = 1;

	while(1)
	{
		if((n / pow(5, p)) == 0)
		{
			break;
		}
		else
		{
			count += n / pow(5, p++);
		}
	}

	return count;
}