CF852F.Product transformation

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Consider an array AA with NN elements, all being the same integer aa .

Define the product transformation as a simultaneous update Ai=AiAi+1A_{i}=A_{i}·A_{i+1} , that is multiplying each element to the element right to it for , with the last number ANA_{N} remaining the same. For example, if we start with an array AA with a=2a=2 and N=4N=4 , then after one product transformation A=[4, 4, 4, 2]A=[4,\ 4,\ 4,\ 2] , and after two product transformations A=[16, 16, 8, 2]A=[16,\ 16,\ 8,\ 2] .

Your simple task is to calculate the array AA after MM product transformations. Since the numbers can get quite big you should output them modulo QQ .

输入格式

The first and only line of input contains four integers NN , MM , aa , QQ ( 7<=Q<=109+1237<=Q<=10^{9}+123 , 2<=a<=106+1232<=a<=10^{6}+123 , , is prime), where is the multiplicative order of the integer aa modulo QQ , see notes for definition.

输出格式

You should output the array AA from left to right.

输入输出样例

  • 输入#1

    2 2 2 7
    

    输出#1

    1 2 

说明/提示

The multiplicative order of a number aa modulo QQ , is the smallest natural number xx such that ax mod Q=1a^{x}\ mod\ Q=1 . For example, .

首页