UNIX sort awk:
sort -k1,1 -k2,2nr file | awk '!seen[$1]++'
vim:
:!%sort -k1,1 -k2,2nr | awk '\!seen[$1]++'
:
sort , 1, 2. :
a 10 x
a 03 w
a 01 y
b 20 w
b 01 x
c 12 z
c 10 y
c 02 w
awk script, seen, 1. !, 1 , :
a 10 x <-- print
a 03 w
a 01 y
b 20 w <-- print
b 01 x
c 12 z <-- print
c 10 y
c 02 w