寻找二维数组中唯一的行和列的索引,以及这些位置上元素的最小和。
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语言:将一个二维数组行和列的元素互换,存到另一个二维数组中。