SP13398 CONHONPR - Contest Hall Preparation
题目描述
在 ACM-ACPC 区域赛开始前,场地负责人和志愿者们都忙于准备工作。其中一项任务是为每支队伍分配桌位,确保同一所大学的队伍不会相邻。场地负责人决定将这项任务交给评委去完成。评委们觉得这个任务可以作为一道比赛题目。但由于他们事务繁忙,只解决了一部分问题,并决定把其余部分留给参赛者去解决。
评委会事先生成了一些队伍分配到桌子的布局,要求参赛者编写一个程序,检查这些布局的正确性。如果某个布局不合规,程序应计算有多少所大学至少有两支队伍相邻。“如果觉得不错,明年可以在比赛中使用这些问题的解决方案。” 主评委 Ahmed Aly 对场地负责人说。
比赛大厅可以用一个 $N$ 行、每行 $M$ 个单元格的二维网格表示。网格中的每个单元格要么有队伍在此就座,要么是空的。每支队伍最多可以有 8 支相邻队伍,在边缘或旁边有空桌子的队伍会少于 8 个相邻队伍。
例如,在下图的布局中,E 队周围有 7 支队伍,分别是 A、B、C、D、F、G 和 H,而 A 队的相邻队伍是 B、D 和 E。

输入格式
输入的第一行是整数 $T$,表示测试用例的数量($1 \le T \le 100$)。每个测试用例第一行包含两个整数 $N$ 和 $M$($1 \le N, M \le 100$),表示网格的行数和列数。接下来的 $N$ 行,每行含有 $M$ 个整数,表示对应单元格的队伍情况。如果某处无人就座则用 `-1` 表示,否则为正整数的大学编号,编号不超过 100。
输出格式
对于每个测试用例,输出一个整数,表示有多少所大学的至少两支队伍相邻在一起。
**本翻译由 AI 自动生成**