【发布时间】:2018-09-16 08:24:28
【问题描述】:
`给定一个 NxM 2D 数组,您需要找出所有行和列中总和(元素之和)最大的行或列。
输入格式: 第 1 行:2 个整数 N 和 M 分别用空格分隔
第 2 行:一行包含 N*M 个元素,按行方式输入,每个元素用空格分隔。
输出格式: 如果行总和最大,则 - "row" row_num max_sum 如果列总和最大,则 - "column" col_num max_sum
注意: 如果有一个以上的行/列具有最大总和,请考虑 首先出现的行/列。如果第 i 行和第 j 列的总和相同(其中 最大),将第 i 行视为答案。
下面是我的代码
public static void findLargest(int input[][]){
int m=input.length;
int n=input[0].length;
int max = Integer.MIN_VALUE;
int q = 0;
int sum=0;
String s = "";
// int a[]=new int [m+n];
//for row sum
for(int i=0; i<n; i++)
{
sum=0;
for(int j=0; j<m; j++)
{
sum =sum +input[i][j];
}
if(sum>max){
max = sum;
q = i;
s = "row";
}
}
// for col
for(int i=0; i<m; i++)
{
sum=0;
for(int j=0; j<n; j++)
{
sum=sum+input[j][i];
}
if(sum>max){
max = sum;
q = i;
s = "column";
}
}
System.out.println(s + " " + q + " " + max);
}
【问题讨论】:
-
好像你在问一个家庭作业问题:请先看看How do I ask and answer homework questions。 Tl;dr:展示你的实现并询问你遇到的具体问题。
-
您好,欢迎来到 StackOverflow!你的问题很不清楚。你能解释一下你的代码的哪一部分不起作用吗?创建minimal reproducible example 将是一个好的开始。另外,您可能想看看how-to-ask page。
-
嗨,我的代码在 MM 方阵上运行良好,但在 MN 型矩阵数组的情况下它会失败???我发现自己陷入了困境。