#P16849. [GKS 2021 #D] Arithmetic Square
[GKS 2021 #D] Arithmetic Square
题目描述
给定一个 的整数网格。记 为网格中第 行第 列的整数,其中 和 从 开始编号。网格正中间的整数 缺失。请找出该正方形的行、列和对角线中,能形成等差数列的序列的最大数量。你可以用任意整数替换缺失的数字。
等差数列(也称算术序列)是指一个序列,其中相邻两项的差为常数。用数学术语表示,即 ,其中 为公差。在本问题中,一个序列可以是某一行、某一列或某一条对角线上的 个数。我们希望通过替换缺失值为某个整数,使得最终得到的序列集合中,等差数列的数量最大。
如果两个序列来自不同的行、列或对角线,则视为不同。例如,中间行的序列 与顶行的序列 将算作 个序列,但同一行、列或对角线上的序列 与 只算作一个序列。
输入格式
输入的第一行给出测试用例的数量 。接下来有 个测试用例。
每个测试用例由 行组成。
每个测试用例的第一行包含 个整数:、 和 。
每个测试用例的第二行包含 个整数: 和 。
每个测试用例的最后一行包含 个整数:、 和 。
输出格式
对于每个测试用例,输出一行,格式为 Case #x: y,其中 是测试用例编号(从 开始), 是在设置缺失元素后,网格的行、列和对角线所能生成的等差数列的最大可能数量。
3
3 4 11
10 9
-1 6 7
4 1 6
3 5
2 5 6
9 9 9
9 9
9 9 9
Case #1: 4
Case #2: 3
Case #3: 8
提示
在样例 #1 中,如果将缺失数字设为 ,则恰好有 个等差数列。
- 主对角线:
- 副对角线:
- 中间列:
- 右列:
如果将缺失数字设为其他整数,则只会得到 个等差数列。因此答案为 。
在样例 #2 中,如果将缺失数字设为 ,则恰好有 个等差数列。
- 副对角线:
- 中间行:
- 左列:
将缺失数字设为其他任何整数都会导致更少的等差数列,因此输出 。
在样例 #3 中,如果将缺失数字设为 ,则所有可能的等差数列都成立。总共有 个等差数列(每个都是 ),因此输出 。
限制条件
。
对于所有 , 为整数。
测试集 1
对于所有 ,。
测试集 2
对于所有 ,。
翻译由 DeepSeek V4 Pro 完成