Algorithms for Tower Placement on Terrain