Competitive Programming, 3rd Edition