Олимпиадный тренинг

Задача . F. Преобразование произведения


Рассмотрим массив A с N элементами, все из которых равны a.

Определим преобразование произведение как одновременное обновление элементов массива Ai = Ai·Ai + 1, которое умножает каждый элементы на элемент справа от него для , а последний элемент AN остаётся неизменным. Например, если мы начнём с массива A с a = 2 и N = 4, после первого преобразования произведения A = [4,  4,  4,  2], а после двух A = [16,  16,  8,  2].

Ваша простая задача — найти массив A после M преобразований произведения. Так как числа могут стать очень большими, выведите ответ по модулю Q.

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

Единственная строка содержит четыре целых числа N, M, a, Q (7 ≤ Q ≤ 109 + 123, 2 ≤ a ≤ 106 + 123, , простое), где  — мультипликативный порядок числа a по модулю Q, см. пояснения.

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

Выведите массив A слева направо, разделённый пробелами.

Примечание

Мультипликативный порядок числа a по модулю Q  — это наименьшее положительное целое число x такое, что ax mod Q = 1. Например, .


Примеры
Входные данныеВыходные данные
1 2 2 2 7
1 2

time 3000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя