Я бы посоветовал регулярно пробовать решать олимпиадные задачи и разбираться в уже решенных. Смотрите https://yandex.ru/championship/ и подобные (hackerrank, topcoder, facebook cup, etc).