Blinker 玩棋盘游戏:相邻格加 1,求变同数最少次数及输出规则 seo每天都做什么好

题目描述

  最近喜欢上一个奇怪的游戏。

该游戏在n乘以m乘以n乘以m的棋盘上进行,每个方格内均标有数字。

每次  会选择两个相邻的格子,并使这两个数都加上 111。

目前,需要探求的是,最少需要多少次操作才能让棋盘上的所有数字都统一为同一个数值;若经过多次操作仍无法实现这一目标,则应输出负一。

输入格式

输入数据的起始行包含一个整数 T,该整数代表整个数据集由 T 轮游戏构成。

每一轮游戏开始时,首先会显示两行数字,第一个数字表示棋盘的行数,第二个数字则代表棋盘的列数。

接下来有 nnn 行,每行 mmm 个数。

输出格式

每个游戏所需的最小结束次数需被确定,若该次数无法保持一致,则应输出负一。

<p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre><code class="language-input1">2 2 2 1 2 2 3 3 3 1 2 3 2 3 4 4 3 2 </code></pre></p> <p style='margin-bottom:15px;color:#555555;font-size:15px;line-height:200%;text-indent:2em;'> <pre><code class="language-output1">2 -1 </code></pre></p>

数据规模与约定

针对30%的数据,需确保T值不超过10,同时n和m的取值范围在1至8之间。

在处理1000%的数据时,确保T值不超过10T,同时n和m的取值范围在1到40之间,包括1和40,并且这些数都是正整数,且每个数都小于10的9次方。