Pagini recente » Cod sursa (job #2413759) | Cod sursa (job #1441471) | Cod sursa (job #554415) | Cod sursa (job #2740327) | Cod sursa (job #471338)
Cod sursa(job #471338)
#include<fstream>
using namespace std;
int m;
int cinci(long n)
{
m=0;
while(n)
{
m=m+(n/5);
n=n/5;
n-=n%5;
}
return m;
}
int main()
{
ifstream f("fact.in");
ofstream g("fact.out");
int p,i,c,st=0,dr=400000015;
f>>p;
//caut binar rezultatul care sa se potriveasca
if(p)
while(st<dr)
{
if(cinci((st+dr)/2)==p) st=dr=((st+dr)/2)-((st+dr)/2)%5;
else if(cinci((st+dr)/2)>p) dr=(st+dr)/2;
else if(cinci((st+dr)/2)<p) st=(st+dr)/2;
}
if(!p) g<<1;
if(st==dr) g<<dr;else if(st>dr) g<<-1;
f.close();
g.close();
return 0;
}