给定一个 m 行 n 列的整数矩阵,行编号 1~m ,列编号 1~n 。 其中,第 i 行第 j 列的元素为 pij 。 你可以任意抽取其中不超过 n?1 行元素,这些元素之间保持同一行列关系不变,构成一个新矩阵。 构成新矩阵后,我们可以确定一个最大的整数 L ,使得新矩阵中每一列都至少存在一个元素不小于 L 。 我们希望通过合理构造新矩阵,使得 L 的值尽可能大。 请你计算并输出 L 的最大可能值。 注意:矩阵一共有 m 行,但是抽取的是 n?1 行,而不是 m?1 行,读题时不要搞混行和列。 输入格式 第一行包含整数 T ,表示共有 T 组测试数据。 每组数据首先包含一个空行。 第二行包含两个整数 m,n 。 接下来 m 行,每行包含 n 个整数,其中第 i 行第 j 个整数表示 pij 。 输出格式 每组数据输出一行结果,一个整数,表示 L 的最大可能值。 数据范围 前三个测试点满足 1≤T≤5 ,2≤n×m≤100 。 所有测试点满足 1≤T≤104 ,2≤n ,2≤n×m≤105 ,1≤pij≤109 ,一个测试点内所有数据的 n×m 值相加不超过 105 。 输入样例1: 5 2 2 1 2 3 4 4 3 1 3 1 3 1 1 1 2 2 1 1 3 2 3 5 3 4 2 5 1 4 2 7 9 8 1 9 6 10 8 2 4 6 5 2 1 7 9 7 2 输出样例: 3 2 4 8 2
时间: 2023-03-09 08:53:52 浏览: 285
main.cpp_M?n_矩阵变换_
给定矩阵的条件是,可以抽取不超过n-1行元素,并保持行列关系不变构成新矩阵,使得新矩阵中每一列至少一个元素不小于L,且尽可能使L的值达到最大。因此,需要考虑每一列数据的最大值,取出每列最大值中的最小值即为L的最大可能值。
阅读全文