0 1 2 3
0 5 10 1 5
1 1 2 1 15
2 8 7 5 3
3 6 1 12 1
这是一个二维数组,我需要找到所有行的总和,并且输出应该打印最高和值的索引。
我的代码给了我第2行的总和23,但我想要答案2(索引)而不是23(总和)
public static int indexofHighestRowSum (int[][] a)
{
int i,j, sum, n=0;
for (i=0; i<a.length; i++)
{
sum =0;
for (j=0; j<a[0].length; j++)
{
sum += a[i][j];
}
if (sum >n)
n=sum;`
}
return a[index];
}
答案 0 :(得分:0)
您需要跟踪当前最高金额旁边的索引。然后你可以返回遇到的最高行的索引:
public static int indexofHighestRowSum(int[][] a) {
int i, j, sum, n = 0, index = 0;
for (i = 0; i < a.length; i++) {
sum = 0;
for (j = 0; j < a[0].length; j++) {
sum += a[i][j];
}
if (sum > n) {
n = sum;
index = i;
}
}
return index;
}