代码供参考 其中长度为4的填充数组的四个数字分别取中间元素所在的行 列 两条对角线元素的 中间值 (使全体等差数列最大只能从这四个出) package mianshi.墨奇; import java.util.Enumeration; import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int T = sc.nextInt(); for(int i=1;i<=T;i++){ int ans =0; int [][] matrix = new int[3][3]; int min =Integer.MAX_VALUE; int max = Integer.MIN_VALUE; for(int j=0;j<3;j++){ for(int k=0;k<3;k++){ if(j==1 &;&; k==1) continue; matrix[j][k] =sc.nextInt(); } } int []tianchong = new int[4]; tianchong[0] = (matrix[1][0] +matrix[1][2])/2; tianchong[1] = (matrix[0][1] +matrix[2][1])/2; tianchong[2] = (matrix[0][0] +matrix[2][2])/2; tianchong[3] = (matrix[2][0] +matrix[0][2])/2; for(int j : tianchong){ int sum =0; matrix[1][1] = j; for(int k=0;k<3;k++){ if(matrix[k][1]-matrix[k][0] == matrix[k][2]-matrix[k][1]) sum++; } for(int k=0;k<3;k++){ if(matrix[1][k]-matrix[0][k] == matrix[2][k]-matrix[1][k]) sum++; } if(matrix[1][1]-matrix[0][0] == matrix[2][2]-matrix[1][1]) sum++; if(matrix[2][0] - matrix[1][1] == matrix[1][1] - matrix[0][2]) sum++; ans = Math.max(ans,sum); } System.out.println("Case #"+i+": "+ans ); } } }
1 5

相关推荐

VirtualBool:都去逗他了?
点赞 评论 收藏
分享
04-02 16:49
门头沟学院 Java
_bloodstream_:我也面了科大讯飞,主管面的时候听说急招人优先考虑能尽快实习的,我说忙毕设,后面就一直没消息了
点赞 评论 收藏
分享
牛客网
牛客企业服务