 | | xumaoxing V2EX member #32304, joined on 2013-01-14 13:47:23 +08:00 |
xumaoxing's recent replies
def simple_sqrt(v, t):
if v < 0:
raise ValueError('domain error')
if v == 0:
return 0
# binary search
if v < 1:
left, right = v, 1
else:
left, right = 0, v
while True:
mid = (left + right) / 2.0
dest = mid * mid
diff = dest - v
if diff > 0 and (mid - t) * (mid - t) <= v:
return mid
if diff < 0 and (mid + t) * (mid + t) >= v:
return mid
if diff == 0:
return mid
if diff > 0:
right = mid
else:
left = mid
之前碰到过这样的问题。办法是将路由器的信道从13改为11,就正常了