nth_element does not honor the established order, so previously good
candidates can still be thrown out when the scores are the same.
Using a stable_sort keeps the order but is more costly.
We don't have a stable_partial_sort unfortunately and the one
provided as example, implemented using partial_sort and two aditional
comparisions to make it stable, is slower than a stable_sort.