Задача №1794. Наибольшая возрастающая подпоследовательность за O(n*log(n)) с восстановлением ответа

Числовая последовательность задана рекуррентной формулой: \(a_{i+1}\)=(\(k*a_i\)+\(b\))mod \(m\). Найдите её наибольшую возрастающую подпоследовательность.

Входные данные

Программа получает на вход пять целых чисел: длину последовательности \(n\) (1≤\(n\)\(10^5\)), начальный элемент последовательности \(a_1\), параметры \(k\), \(b\), \(m\) для вычисления последующих членов последовательности (1≤\(m\)\(10^4\), 0≤\(k\)<\(m\), 0≤\(b\)<\(m\), 0≤\(a_1\)<\(m\)).

Выходные данные

Требуется вывести наибольшую возрастающую подпоследовательность данной последовательности, разделяя числа пробелами. Если таких последовательностей несколько, необходимо вывести одну (любую) из них.

Примеры
Входные данные
5 41 2 1 100
Выходные данные
41 67 71 
Сдать: для сдачи задач необходимо войти в систему