Competitive Programming in Haskell: tree path decomposition | Hacker News Reader