문제 G: 마방진 확인하기 #1

문제 G: 마방진 확인하기 #1

실행시간 제한: 1 Sec  메모리사용 제한: 128 MB
제출: 61  통과: 34
[제출] [채점기록] [묻고답하기] [만든사람:]

문제 설명

 ‘마방진(魔方陣)(magic square)’이라는 것이 있다. 마방진에서 ‘방’자는 사각형을 의미하고, ‘진’자는 줄을 지어 늘어선다는 뜻이다. 마방진이란 정사각형에 1부터 차례로 숫자를 적되, 숫자를 중복하거나 빠뜨리지 않고, 가로, 세로, 대각선에 있는 수들의 합이 모두 같도록 만든 숫자의 배열을 의미한다. 예를 들어 3×3 마방진은 1부터 9까지의 숫자를 중복하지 않고 모두 사용하되 가로, 세로, 대각선의 합이 15가 되도록 정사각형 안에 배열해 놓은 예는 아래 그림과 같다.

1부터 9까지의 숫자가 3 x 3 배열 형태로 입력될 경우 이 숫자들의 배열이 마방진이 되는지 아닌지를 검사하는 프로그램을 작성하시오.

입력 설명

첫째 줄에 테스트 케이스의 개수 T(1 ≤ T ≤ 10)가 주어진다. 
그 다음 줄부터 각 테스트 케이스는 1부터 9까지의 정수가 3 x 3 행렬 형태로 주어진다.
입력되는 숫자 배열에서는 중복이나 빠진 숫자는 존재하지 않는다.

출력 설명

각 테스트 케이스마다 해당 숫자 배열이 마방진을 이루면 Magic Square! 이라 출력하고, 그렇지 않은 경우에는 No Magic Square! 라고 한 줄에 하나씩 출력한다.

입력 예시 Copy

2
4 9 2
3 5 7
8 1 6
4 9 2
7 5 3
8 1 6

출력 예시 Copy

Magic Square!
No Magic Square!

도움

함수를 활용하면 작성이 더욱 편리합니다.