Problem: 832. Flipping an Image 翻转图像
解题过程
耗时100%,交换前后两个数字,然后前后都 +1 并&1拿到翻转以后的数字,最后奇数矩阵还需要处理最中间的那个数字
Code
class Solution { public: vector<vector<int>> flipAndInvertImage(vector<vector<int>>& image) { int n = image.size(); for(int i = 0; i < n; i++) { for(int j = 0; j < n/2; j++) { swap(image[i][j], image[i][n - j - 1]); image[i][j] = ((image[i][j] + 1) & 1); image[i][n - j - 1] = ((image[i][n - j - 1] + 1) & 1); } if((n&1)==1) { image[i][n/2] = ((image[i][n/2] + 1) & 1); } } return image; } };