SP4035 MNERED - NERED

题目描述

在附近的幼儿园里,孩子们最近发明了一种既考验力量又需要灵活性的有趣游戏,深受他们的喜爱。游戏场地是一大片分为 $N \times N$ 格的平整区域。孩子们会将大块的海绵立方体放在这些方格上。每个立方体的边长与方格的边长相同。当立方体被放置时,其边缘与某个方格对齐。立方体也可以叠放在另一个立方体的上面。孩子们喜欢用立方体搭建小堡垒并躲在里面,不过他们也总是弄得一片混乱。因此在幼儿园关门之前,老师需要整理这些立方体,使得它们在场地上组成一个矩形区域,并保证这个区域内每个方格恰好放一个立方体。每次移动时,允许将一个立方体从一个方格的顶部移到另一个方格的顶部。 你的任务是编写一个程序,根据当前场地的状态,计算要将所有立方体排列成一个矩形所需要的最少移动次数。

输入格式

第一行包含两个整数 $N$ 和 $M$,分别表示场地的边长和当前放置在场地上的立方体数量,其中 $1 \le N \le 100$,$1 \le M \le N^2$。 接下来的 $M$ 行,每行包含两个整数 $R$ 和 $C$,表示在第 $R$ 行第 $C$ 列的方格上有一个立方体($1 \le R, C \le N$)。

输出格式

输出将所有立方体组合成一个矩形所需的最少移动次数。可以确保总是能够组合成功。 **本翻译由 AI 自动生成**