Python 3 solution using dynamic programming
```class Solution:\n    def kthLargestValue(self, matrix: List[List[int]], k: int) -> int:\n        array=[]\n        matrix.insert(0,[0]*len(matrix[0]))\n     
```class Solution:\n    def kthLargestValue(self, matrix: List[List[int]], k: int) -> int:\n        array=[]\n        matrix.insert(0,[0]*len(matrix[0]))\n        for i in range(len(matrix)):\n            matrix[i].insert(0,0)\n        for i in range(1,len(matrix)):\n            for j in range(1,len(matrix[i])):\n                matrix[i][j]=matrix[i][j]^matrix[i-1][j]^matrix[i][j-1]^matrix[i-1][j-1]\n                array.append(matrix[i][j])\n        array.sort(reverse=True)\n        return(array[k-1])\n        \n                \n
['Dynamic Programming', 'Python', 'Python3']