Cod sursa(job #223069)

Utilizator andrei.ismailIsmail Andrei-Adnan andrei.ismail Data 26 noiembrie 2008 20:39:45
Problema Factorial Scor 95
Compilator c Status done
Runda Arhiva de probleme Marime 0.49 kb
#include <stdio.h>
#include <string.h>

#define MAX 100

int get_n(int p) {
	int v[MAX], i, p0 = 0, n = 0;
	
	memset(v, 0, MAX * sizeof(int));
	
	while (p0 < p) {
		v[0]++;
		n+=5;
		for (i = 0; v[i] == 5; i++) {
			v[i+1]++;
			v[i] = 0;
		}
		p0 += (i + 1);
	}
	
	if (p0 == p)
		return n;
	else
		return -1;
}

int main(void) {
	FILE *f;
	int p;
	
	f = fopen("fact.in", "rt");
	fscanf(f, "%d", &p);
	fclose(f);
	
	f = fopen("fact.out", "wt");
	fprintf(f, "%d", get_n(p));
	fclose(f);
	
	return 0;
}