CF289B Polo the Penguin and Matrix

题目描述

小企鹅 Polo 有一个 $n \times m$ 的矩阵,矩阵中的元素均为整数。矩阵的行从上到下编号为 $1$ 到 $n$,列从左到右编号为 $1$ 到 $m$。我们用 $a_{ij}$ 表示第 $i$ 行第 $j$ 列的矩阵元素。 小企鹅每次可以选择某个矩阵元素,加上或减去 $d$。请你求出使矩阵中所有元素都变成相等所需要的最少操作次数。如果无法实现这样的操作,请输出“不可能”。

输入格式

第一行包含三个整数 $n$、$m$ 和 $d$,分别表示矩阵的行数、列数和参数 $d$,$1 \leq n, m \leq 100, 1 \leq d \leq 10^{4}$。 接下来的 $n$ 行,每行包含 $m$ 个整数,第 $i$ 行第 $j$ 个整数为矩阵元素 $a_{ij}$,$1 \leq a_{ij} \leq 10^{4}$。

输出格式

输出一行,一个整数,表示小企鹅使所有矩阵元素相等所需的最少操作次数。如果无法实现,输出 $-1$。

说明/提示

由 ChatGPT 5 翻译