В какой последовательности учить темы (категории задач) в олимпиадном программировании?
Я для себя отсортировал бы так (хотя многие темы знаю слишком поверхностно :) ):
Простая математика
Целочисленная арифметика
Структуры данных
Двумерные массивы
Сортировка и последовательности
Рекурсия, перебор
Геометрия
Длинная арифметика
Жадный алгоритм
Динамическое программирование
Теория графов
Математическое моделирование
Комбинаторика
Порядок изучения тем/категорий лежит в основе многих книг, которые и являются основным источником структур данных, алгоритмов и принципов решения олимпиадных задач. Вот лишь некоторые из них:Ахо А., Хопкрофт Дж., Ульман Дж. Структуры данных и алгоритмы Дональд Кнут. Искусство программирования