Cod sursa(job #549646)

Utilizator zeroblitz36FMI - Roscaneanu George zeroblitz36 Data 8 martie 2011 20:36:28
Problema Factorial Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.5 kb
#include<cstdio>
int p,g;
FILE *in,*out;
int f(int n)
{
	if(n>4)return n/5+f(n/5);
	else return 0;
}
int binar(int st,int dr)
{
	//printf("%d %d %d\n",st,(st+dr)/2*5,dr);
	int x=f((st+dr)/2*5);
	if(st>dr) return -1;
	if(x==p)return (st+dr)/2*5;
	else if(x>p)return binar(st,(st+dr)/2-1);
	else return binar((st+dr)/2+1,dr);
}
int main()
{
	in=fopen("fact.in","r");
	fscanf(in,"%d",&p);
	out=fopen("fact.out","w");
	if(p==0)fputc('1',out);
	else fprintf(out,"%d",binar(1,20000000));
}