Answer:
For values when n<32 use fb(n) else use fa(n).
See explaination for details
Explanation:
Earlier when n=1 fa(n)=2000 while fb(n)=2. for n=2 fa(n)=2000*22 =2000*4=8000 while fb(n)=2*24=2*16=32. It is observed that fa(n) requires more time than fb(n) for small values.
Now, we will see when fb(n) crosses fa(n). This can happen only when fb(n) values equals or greater than fa(n)
therefore,
2000n2<=2n4
Solving equation we get n2>=1000 which can happen when n>=32.
So for values when n<32 use fb(n) else use fa(n)
Refraction represents a change in the direction of propagation when beams of light encounter a medium with a different density.
Reflection is the return of light to the medium it came from when it encounters a mirror.
def dx(fn, x, delta=0.001):
return (fn(x+delta) - fn(x))/delta
def solve(fn, value, x=0.5, maxtries=1000, maxerr=0.00001):
for tries in xrange(maxtries):
err = fn(x) - value
if abs(err) < maxerr:
return x
slope = dx(fn, x)
x -= err/slope
raise ValueError('no solution found')