当前位置:   article > 正文

华为OD机试真题-矩阵匹配-2024年OD统一考试(C卷)

华为OD机试真题-矩阵匹配-2024年OD统一考试(C卷)

题目描述:

从一个N*M(N<=M)的矩阵中选出N个数,任意两个数字不能在同一行或同一列,求选出来的N个数中第K大的数字的最小值是多少。

输入描述:

输入矩阵要求:1<=K<=N<=M<=150

输入格式:N M K

                  N*M矩阵

输出描述:

N*M的矩阵中可以选出M!/N!种组合数组,每个组合数组中第K大的数中的最小值。无需考虑重复数字,直接取字典排序结果即可。

补充说明:注意:结果是第K大的数字的最小值

示例1

输入:3 4 2

         1 5 6 6 

         8 3 4 3

         6 8 6 3

输出:3

说明:N*M的矩阵中可以选出M!/N!种组合数组,每个组合数组中第K大的数中的最小值;上述输入中选出的数组组合为1,3,6; 1,3,3; 1,4,8; 1,4,3;......上述输入样例中选出的组合数组有24种,最小数组为1,3,3,则2大的最小值为3

解题思路:考察对二分查找、DFS搜索的理解和运用。 

C++解法: 

  1. #include <iostream>
  2. #include <vector>
  3. #include <a
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/176468
推荐阅读
相关标签
  

闽ICP备14008679号