시간 제한
메모리 제한
시간 제한
2초
메모리 제한
128 MB
N개의 세포로 이루어진 일차원 세포 자동자(Cellular Automaton)가 있다. 세포는 0번부터 N-1번가지 번호가 매겨져 있다.
각 세포는 상태를 가지고 있다. 상태는 M보다 작은 음이 아닌 정수이다. 세포의 상태는 시간이 1씩 지날때마다 진화한다. 시간 t에서 i번째 세포의 상태를 S(i,t)로 나타낸다. t+1일 때의 상태는 다음과 같은 방정식을 통해 구할 수 있다.
S(i,t+1) = (A × S(i-1,t) + B × S(i,t) + C × S(i+1,t)) mod M
위의 식에서 A, B, C는 음이 아닌 정수이다. i<0 또는 N ≤ i인 경우에 S(i,t) = 0이다.
일차원 세포 자동자의 초기 상태가 주어졌을 때, 시간이 T만큼 지난 뒤, 세포의 상태를 구하는 프로그램을 작성하시오.
각 테스트 케이스는 다음과 같은 형식으로 이루어져 있다.
N M A B C TS(0,0) S(1,0) ... S(N-1,0)0 < N ≤ 50, 0 < M ≤ 1000, 0 ≤ A,B,C < M, 0 ≤ T ≤ 109
입력의 마지막 줄에는 0이 여섯 개 주어진다.
각 테스트 케이스에 대해서, 시간 T에서 세포의 상태를 출력한다. 출력은 다음과 같은 형식이다.
S(0,T) S(1,T) ... S(N-1,T)각 세포의 상태는 정수이고, 공백으로 구분되어야 한다.
N M A B C TS(0,0) S(1,0) ... S(N-1,0)S(0,T) S(1,T) ... S(N-1,T)