#P1401. Binary Blocks

Binary Blocks

题目描述

你会得到一张图像,该图像可用 nmn \cdot m 的 2D 像素网格表示。图像的每个像素都处于打开或关闭状态,分别由字符 01 表示。你想压缩该图像,你需要选择一个整数 k>1k > 1 并将图像分成 kkk \cdot k 的块。如果 nnmm 不能被 kk 整除,则在图像的右侧和底部填充 0,以便它们可以被 kk 整除。你可能需要切换一些像素的状态,使得每个块内所有像素状态一致 —— 这样才是可压缩的。你可以任选 kk,请你找到需要切换状态的最小像素数。输出这个最小值。

更具体地说步骤是:你首先选择整数 k>1k > 1,然后用 0 填充图像,然后切换一些像素的状态,使其对于你选择的 kk 可压缩。

输入格式

第一行两个整数 n,m (2n,m2500)n,m\ (2\le n,m\le 2500)

接下来是一个 nnmm 列的矩阵。

输出格式

输出一个整数表示答案。

3 5
00100
10110
11001
5