Computational Geometry: An Introduction Through Randomized Algorithms