В КиберШколе есть стартовый (нулевой) модуль для олимпиадников (программисты же должны нумеровать с нуля!) — материал для быстрого и простого вхождения в настоящий курс алгоритмов.
В этом модуле есть не только Задачи, но Подсказки и Разборы, в нем есть специальные места в качестве самоучителя и есть ответы на все вопросы. Даже для простейших программ приводятся фрагменты решения и много математики, которая пойдет на пользу.