Problem

7 /8


Cat Goose et matrice aléatoire

Problem

Cat Goose a préparé pour Nick Fury un tableau rectangulaire a de taille \(n \cdot m\) contenant des nombres de 0< /span> code> à p−1. Nick Fury s'est immédiatement rendu compte que chaque nombre de ce tableau était choisi au hasard avec une probabilité égale de 0 à p− 1 , indépendamment des autres.

Votre tâche — trouver une sous-matrice rectangulaire de ce tableau, dans laquelle la somme est divisible par p. Parmi toutes ces sous-matrices, vous devez trouver celle dans laquelle la somme des éléments est maximale.

Formellement, vous devez trouver \(1 <= i_1 <= i_2 <= n\), \( 1 <= j_1 <= j_2 <= m\) que la somme de ax,y sur tout \(i_1 <= x <= i_2\), \(j_1 <= y <= j_2\) divisé sur p, et parmi ceux-ci a le montant maximum.

Entrée
La première ligne contient trois entiers n, m, p (\(1 < ;= n m, p <= 1 000 000\)) — dimensions de la matrice et le nombre par lequel la somme de la sous-matrice doit être divisée.
Les lignes n suivantes contiennent des entiers m, le j-ème nombre dans la i-ème ligne est égal à ai,j (\(0 <= a_{i,j} <= p ? 1\) ).
Il est garanti que chaque nombre dans a est choisi indépendamment au hasard, équiprobablement de 0 à p−1.

Sortie
Afficher un seul entier — la somme maximale d'une sous-matrice rectangulaire où la somme est divisible par p. S'il n'y en a pas, écrivez 0.

 

Exemples
6 7 5
0 0 3 0 1 0 4
0 2 3 0 2 2 1
2 4 1 4 4 0 3
1 1 0 2 0 3 2
3 0 3 1 0 1 2
1 2 0 0 3 3 1
# Entrée Sortie
1 65