How to solve $5000 n \log(n) \leq 2^{n/2}$

340 Views Asked by At

I'm trying to solve the following problem:

What is the smallest value of n so that an algorithm with a runtime of $5000 n \log(n)$ runs faster than an algorithm with a runtime of $2^{2/n}$ on the same computer?

So I figured it was just a matter of solving the equation $5000 n \log(n) \leq 2^{n/2}$ but I have no idea how I should do it, I've tried for a while using algebra but that's leading me nowhere.

3

There are 3 best solutions below

3
On

Take log of both sides (I'm assuming that "log" here means $\log2$) to get $$ \log(5000) + \log(n) + \log \log n \le \frac{n}{2} $$ Since $\log n$ and $\log \log n$ are both small compared to $n$, you can say that $n$ is somewhere around $2\log(5000) \approx 25$. So start with $n = 20$ and $n = 52$, say; for one of these the left side should be smaller than the right; for the other, it should be greater. Apply bisection at most 6 times to get your answer.

0
On

defining $f(n)=2^{n/2}-5000n\log(n)$ i have got with the Newton method $n\approx 38.88154945$

1
On

some modification you have: $ ln(5000)=8.52<n/2*(0.7)-ln(ln(n)*n)$ Then: $ 8.52<0.35*n+ ln(n*ln(n))$ For n= 30 we have 8.52>7.some For n = 40 we have 8.52<9.some We conclude that number is bwthween 30 and 40. Metohd od half use 35: we have: 8.52>7.5 => number is in [35, 40]

Use n=38 => 8.52>8.37 n is in [39, 40] Us n=39 ->8.52<8.68 => n=39 is final soultuon(min n with that property). Maybe it would be some mistakes, but this method you may use.