寻找二维数组中唯一的行和列的索引,以及这些位置上元素的最小和。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了寻找二维数组中唯一的行和列的索引,以及这些位置上元素的最小和。相关的知识,希望对你有一定的参考价值。

我偶然发现了一个问题,在这个问题中,我得到了一个2D数组形式的5x5矩阵,我应该找到5个元素的最小和,其中每个元素应该是唯一的行和列,并打印这些元素的索引和最小和。

这个问题给出了3个测试案例作为例子。

测试用例1:测试用例2:测试用例3:测试用例4

{
{5, 4, 4, 1, 6},
{1, 3, 2, 4, 6},
{3, 2, 3, 2, 6},
{0, 4, 5, 4, 6},
(6, 6, 6, 6, 6}
};

Output: (3,0) (2,1) (1,2) (0,3) (4,4)
Minimum sum: 11

测试案例2:

{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0},
{0, 0, 0, 0, 0}
};

Output: (0,0) (1,1) (2,2) (3,3) (4,4)
Minimum sum: 0

测试用例3:

{
{1, 2, 3, 4, 5},
{5, 4, 3, 2, 1},
{1, 2, 7, 4, 5},
{5, 4, 3, 2, 1},
{1, 2, 3, 4, 5},
};

Output: (0,0) (2,1) (4,2) (1,3) (3,4)
Minimum sum: 9

我想知道他们说的 "唯一的行和列 "是什么意思 我从测试用例中看到的是,列的指数从0开始,每对指数增加一个。

答案

独特的行和列意味着没有两个元素共享一行或一列。

在这里,我已经高亮了所选的数字。

你可以看到,当一个数字被选中时,同一列中没有其他数字也被选中。 同一行中没有其他数字被选中。

5 4 4 1 6 1 3 2 4 6 3 2 3 2 6 0 4 5 4 6 6 6 6 6 6

1 + 2 + 2 + 0 + 6 = 11

以上是关于寻找二维数组中唯一的行和列的索引,以及这些位置上元素的最小和。的主要内容,如果未能解决你的问题,请参考以下文章

c语言:将一个二维数组行和列的元素互换,存到另一个二维数组中。

LeetCode73. 矩阵置零

java基础_二维数组的行和列

改变 SKTileMapNode 的位置不会改变它的行和列的位置

在二维数组中的行和列处查找最大值

在二维数组中搜索零并制作相应的行和列 0