Pagini recente » Cod sursa (job #853587) | Cod sursa (job #224532) | Cod sursa (job #2906433) | Cod sursa (job #1873282) | Cod sursa (job #1254696)
#include <fstream>
using namespace std;
ifstream f("numere2.in");
ofstream g("numere2.out");
long long p,exp,st,dr,best,u,o,i,m;
int main()
{
f>>p;
st=1,dr=p;
exp=2;
while(st<=dr)
{
m=(st+dr)/2;
u=o=1;
for (i=1;i<=exp;i++)
u*=m,o*=(m+1);
if (u<=p && p<o)
{
if (u==p) best=m;
st=1,dr=p,exp++;
}
else if (o<=p) st=m+1;
else if (u>p) dr=m-1;
}
g<<best;
return 0;
}