Cod sursa(job #607869)

Utilizator alexalghisiAlghisi Alessandro Paolo alexalghisi Data 13 august 2011 17:32:45
Problema Factorial Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.6 kb
#include <cstdio>
#include <iostream>
using namespace std;

int cauta(int p)
{
	int li=1,ls=500000000,mij,cinci,count=0,rez=-1;
	while(li<=ls)
	{
		//cout<<"\nli: "<<li<<" ls: "<<ls;
		count=0;
		mij=(li+ls)/2;
		for(cinci=5;cinci<=mij;cinci*=cinci)
		{
			count+=mij/cinci;
		}

		if(count==p) { rez=mij; ls=mij-1;}
		if(count<p) li=mij+1;
		if(count>p) ls=mij-1;
		
	}
	return rez;
}


int main()
{
	int p;
	freopen("fact.in","r", stdin);
	scanf("%d",&p);
	fclose(stdin);
	freopen("fact.out","w", stdout);
	if(p==0) cout<<1;
	else cout<<cauta(p);
	fclose(stdout);

	return 0;
}