optimized range search in UpdateTowers()