题目背景
感谢 @
Unknown User
提供了一种优于标算的做法。
题目描述
本题读入量较大,建议使用较快的读入方式,可以参考 赛时公告板
给定 n 个数列,每个数列有 m 个元素,第 i 个数列第 j 个元素为正整数 ai,j。
你每次可以选择 i1,j1 和 i2,j2,交换 ai1,j1 和 ai2,j2。你至多可以进行 x 次交换。
定义 di 为第 i 个数列中第 k 大的元素。
请最小化 i=1maxn{di}。(表示 d1,d2,⋯,dn 中的最大值)
输入格式
第一行两个正整数 n,m。
接下来 n 行每行 m 个正整数,表示数列。
最后一行两个正整数 k,x。
输出格式
一行一个数,输出最小化的 i=1maxn{di}。
提示
对于样例 1,将 a2,5 和 a1,5 交换,可以证明,没有更优策略。
对于 30% 的数据,x=106,1≤k≤m。
对于另外 10% 的数据,所有的数都相等。
对于另外 30% 的数据,1≤n,m≤2×103,1≤k≤m,ai,j≤106,0≤x≤n×m。
对于 100% 的数据,1≤n,m≤2×103,1≤k≤m,1≤ai,j≤1018,0≤x≤n×m。