Bomboni
시간 제한2초메모리 제한1024 MB
장애물이 있는 n x n 격자에서 왼쪽 위에서 오른쪽 아래로 내려가거나 오른쪽으로만 이동할 때, 사탕 수의 곱이 k로 나누어지는 경로의 수를 998244353으로 나눈 나머지로 구한다.
문제
Iva is a big fan of candy! In front of her is an times field filled with candy and obstacles. Iva is currently in the upper left cell of the field and by moving only down and right she will travel to the lower right cell. The cell Iva is currently in does not contain an obstacle.
In every cell, there is either an obstacle or a piece of candy with a number written on it. Iva will eat all the candy she gets her hands on during her trip (including the candy in the first and last cell) and then multiply all the numbers on them. Iva knows her favourite number is and she wants the product of the numbers on the candy she has eaten to be divisible by . She wants to know how many such paths there are. Because that number can be huge, she is interested in it modulo .
입력
The first line contains two integers and (, ), which denote the size of the field and Iva’s favourite number.
In each of the next lines, there are numbers describing the -th row of the field (). If , then that cell contains an obstacle, otherwise and that cell contains a piece of candy with that number.
출력
Print a single line with the required number from the task.
힌트
Clarification of the second example:
There are three possible paths such that the product is divisible by : .