1738. 找出第 K 大的异或坐标值
题目链接:1738. 找出第 K 大的异或坐标值
代码如下:
cpp
//列前缀异或和
//参考链接:https://leetcode.cn/problems/find-kth-largest-xor-coordinate-value/solutions/2790359/liang-chong-fang-fa-er-wei-qian-zhui-yi-689bf
class Solution
{
public:
int kthLargestValue(vector<vector<int>>& matrix, int k)
{
vector<int> res,col_sum(matrix[0].size());
for(const auto& row:matrix)
{
int s=0;
for(int j=0;j<row.size();j++)
{
col_sum[j]^=row[j];
s^=col_sum[j];
res.push_back(s);
}
}
ranges::nth_element(res,res.end()-k);
return res[res.size()-k];
}
};