https://www.hackerrank.com/domains/algorithms/