Text: (Problem 4.14 in the Dutch book.) Here is a paranoid algorithm to compute the maximum of a set A of n real numbers.
Algorithm ParanoidMaximum(A)
(a) If |A| = 1, then return the unique element x ∈ A.
(b) Otherwise, pick a random element x ∈ A.
i. x' := ParanoidMaximum(A \ {x})
ii. If x < x', then return x'.
iii. Otherwise, we suspect that x is the maximum, but to be absolutely sure, we compare x with all other elements in A. Finally, return x.
Analyze the expected running time of this algorithm.