1 引言
有趣的题目。
2 题目
问题描述
九宫格。输入1-9这9个数字的一种任意排序,构成3*3二维数组。如果每行、每列以及对角线之和都相等,打印1。否则打印0。
样例输出
与上面的样例输入对应的输出。
例:
例:
数据规模和约定
输入1-9这9个数字的一种任意排序。
3 源代码
import java.util.*; class Main { private static boolean Test(int[] A) { int sum=A[0]+A[1]+A[2]; for(int i=3;i<=6;i+=3)//判断行 if(sum!=A[i]+A[i+1]+A[i+2]) return false; for(int i=0;i<=2;i++)//判断列 if(sum!=A[i]+A[i+3]+A[i+6]) return false; if(sum!=A[0]+A[4]+A[8])//判断对角线 return false; if(sum!=A[2]+A[4]+A[6]) return false; return true; } public static void main(String[] agrs) { Scanner sc=new Scanner(System.in); int[] a=new int[9]; for(int i=0;i<9;i++) a[i]=sc.nextInt(); if(Test(a)) System.out.print("1"); else System.out.print("0"); } }