Cod sursa(job #22101)

Utilizator gennhuTari Gergo-Zsolt gennhu Data 25 februarie 2007 16:52:14
Problema Factorial Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include<stdio.h>
#include<math.h>
#include<iostream.h>
#include<fstream.h>
const int h[] = {0,5,25,125,625,3125,15625,78125,390625,1953125,9762625};
char inner(long k)
{
char i,x;
x=1;
for(i=1;i<=10;i++) {
 if (h[i]==k) {  return i; }
 if (k%h[i]==0&&i>=2) x++;
	}
return x;
}

int main(void) {
FILE *f;
int   i,j,k,l,m,n,n2,p=0;


f=fopen("fact.in","rt");
fscanf(f,"%d",&p);
if (p==0)
n=1;
else
{
n=0;
for (i=1;i<=15000;i++) {
n=n+inner(5*i);
if (n==p) { n=5*i;break;}
if (n>p) { n=-1;break;}
}
}
fclose(f);
f=fopen("fact.out","wt");
if (n!=-1)
	fprintf(f,"%d ",n);
	else
	fprintf(f,"%d ",-1);
fclose(f);
return 0;
}