Divide & Conquer Target: 10s
Quickselect partitions then recurses into one side. O(n) average for kth element.
def qs(l, r, k):
p = partition(l, r)
if p == k: return a[p]
return qs(p+1, r, k) if p < k else qs(l, p-1, k)
Type it from memory. Go.