【发布时间】:2021-08-21 09:14:24
【问题描述】:
我在 HackerRank (Diagonal Difference) 上做这个问题,我目前面临一个问题。
这里是问题的链接:
https://www.hackerrank.com/challenges/diagonal-difference/problem
问题是我经常收到错误消息:int cannot be converted to int[][]。
我尝试初始化变量 j 但这也没有解决问题。
这是我的代码:
import java.util.*;
public class DiagonalDifference {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
int a[][] = new int[3][3]; //Initializing the array of 3X3
//Assuming i: rows and j: columns
int i, j, leftToRight = 0, rightToLeft = 0;
for (i = 0; i < 3; i++) {
for (j = 0; j < 3; j++) {
a[i][j] = sc.nextInt();
}
}
diagonalDiff(a[i][j], leftToRight, rightToLeft);
}
static int diagonalDiff(int a[][], int leftToRight, int rightToLeft) {
leftToRight = a[0][0] + a[1][1] + a[2][2];
rightToLeft = a[0][2] + a[1][1] + a[2][0];
int diff = Math.abs(leftToRight - rightToLeft);
return diff;
}
}
如果有人能向我解释我做错了什么,我将不胜感激。 谢谢。
【问题讨论】:
-
您的解决方案仅适用于大小为 3x3 的数组,在问题中它们可以是可变大小的。
标签: java arrays methods integer