Arithmetic Square
InterviewMemory limit1024 MB
Given a 3x3 grid with the center missing, choose any integer for the center to maximize how many of the 8 lines (3 rows, 3 columns, 2 diagonals) form arithmetic progressions.
- Level
Easy3 of 10
- Topics
- Implementation, Brute force, Math, Array
- Solved
- No attempts yet
Problem
You are given a 3×3 grid of integers. Let denote the integer in the i-th row and j-th column of the grid, where i and j are 0-indexed. The integer in the middle of the grid, , is missing. Find the maximum number of rows, columns, and diagonals of this square that form arithmetic progressions. You can replace the missing number with any integer.
An arithmetic progression is a sequence of numbers such that the difference between consecutive terms is constant. In mathematical terms, this can be represented as , where is the common difference. In this problem, a sequence can be the 3 numbers in a row, column, or diagonal. We replace the missing value by an integer that maximizes the number of arithmetic progressions among the resulting sequences.
Two sequences are considered different if they are from different rows, columns, or diagonals. For example, the sequence {2,4,6} across the middle row and {2,4,6} across the top row are counted as two sequences, but the sequences {2,4,6} and {6,4,2} across the same row, column, or diagonal are counted as one sequence.
Input
The first line of the input gives the number of test cases, T. T test cases follow.
Each test case consists of 3 lines.
The first line of each test case contains 3 integers, , , and .
The second line of each test case contains 2 integers, and .
The last line of each test case contains 3 integers, , , and .
Output
For each test case, output one line containing Case #x: y, where x is the test case number (starting from 1) and y is the maximum possible number of arithmetic progressions that can be generated by the rows, columns, and diagonals of the grid after setting the missing element.
Constraints
- .
- are integers, for all i, j.
Hint
In Sample Case #1, if we set the missing number to be 5, we have exactly 4 arithmetic progressions.
- top left diagonal: [3,5,7]
- top right diagonal: [-1,5,11]
- middle column: [4,5,6]
- right column: [11,9,7]
If we set the missing number to any other integer, there would be only 1 progression. Thus, the answer is 4.
In Sample Case #2, if we set the missing number to be 4, we have exactly 3 arithmetic progressions.
- top right diagonal: [6,4,2]
- middle row: [3,4,5]
- left column: [4,3,2]
Setting the missing number to any other integer results in fewer progressions, so we output 3.
In Sample Case #3, if we set the missing number to be 9, we have all possible arithmetic progressions. There are 8 total progressions (each one is [9,9,9]), so we output 8.