>>482 Haskell
import Data.Function (on)
import Data.List (sortBy)
import Data.Map (empty, toList, insertWith)

f :: String -> Char
f = fst . head . reverse . sortBy (on compare snd) . toList . foldl (flip $ flip (insertWith (+)) 1) empty

main :: IO ()
main = print $ f "aabaabbab"