算法提高 9-1九宫格
时间限制:1.0s 内存限制:256.0MB
提交此题
问题描述
九宫格。输入1-9这9个数字的一种任意排序,构成3*3二维数组。如果每行、每列以及对角线之和都相等,打印1。否则打印0。
样例输出
与上面的样例输入对应的输出。
例:
4 9 2
3 5 7
8 1 6
1
数据规模和约定
输入1-9这9个数字的一种任意排序。
import java.util.Scanner;
public class 九宫格 {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int[] a = new int[9];
for (int i = 0; i < 9; i++) {
a[i] = s.nextInt();
}
int sum1, sum2, sum3, sum4, sum5, sum6, sum7, sum8;
sum1 = a[0] + a[1] + a[2];
sum2 = a[3] + a[4] + a[5];
sum3 = a[6] + a[7] + a[8];
sum4 = a[0] + a[3] + a[6];
sum5 = a[1] + a[4] + a[7];
sum6 = a[2] + a[5] + a[8];
sum7 = a[0] + a[4] + a[8];
sum8 = a[2] + a[4] + a[6];
if (sum1 == sum2 && sum1 == sum3 && sum1 == sum4 && sum1 == sum5
&& sum1 == sum6 && sum1 == sum7 && sum1 == sum8)
System.out.print(1);
else
System.out.print(0);
}
}