표
시간 제한2초메모리 제한512 MB
n×m 표의 첫 행이 주어질 때, 각 아래 칸을 위쪽 삼각형 영역의 합을 r로 나눈 값으로 채우고 마지막 행을 출력한다.
문제
크기의 직사각형 표를 생각하자. 표의 행은 위에서부터 부터 까지, 열은 왼쪽부터 부터 까지 번호를 붙인다. 표는 다음과 같이 채워진다. 번째 행 번째 열에 있는 수를 라 하자. 첫 번째 행은 주어진 수 으로 채워진다. 그다음 번째 행부터 번째 행까지 차례로 채운다. 는 위쪽에 있는 삼각형 모양 영역에 포함된 모든 수의 합으로 계산한다. 모든 계산은 로 나눈 나머지로 수행한다.

더 정확히는 는 다음 식으로 계산한다.

예를 들어 표의 행이 3개, 열이 4개이고 첫 번째 행이 이며 이면 표는 다음과 같다. 나머지를 취한 값은 계산 결과가 달라지는 곳에만 표시했다.
첫 번째 행 이 주어졌을 때 마지막 행을 구하자. 답이 커질 수 있으므로 답을 로 나눈 나머지를 구한다.
입력
첫 번째 줄에 , , 이 주어진다. (, ) 과 은 각각 표의 행과 열의 개수이고, 은 답을 나눌 수이다. 다음 줄에 개의 정수 이 주어진다. 모든 는 음이 아니며 보다 크지 않다.
출력
첫 번째 줄에 개의 수 을 출력한다. 이 수들이 표의 마지막 행이다.