day-82 最少翻转次数使二进制矩阵回文 I


思路

依次计算使行回文和列回文的的翻转次数,返回较小的次数即可

解题过程

计算行翻转次数:对于每一行,如果第一个数与最后一个数不相同(前提前一个数的索引小于后一个数的索引)则需翻转一次,将所有行翻转次数加在一起就是行翻转总共的次数。

列翻转计算方法类似

Code

java 复制代码
class Solution {
    public int minFlips(int[][] grid) {
        int m=grid.length;
        int n=grid[0].length;
        int rownum=hw1(grid,m,n);
        int clonum=hw2(grid,m,n);
        return Math.min(rownum,clonum);
    }


    public int hw1(int[][] grid,int m,int n){
        int num=0;
        for(int i=0;i<m;i++){
            int left=0,right=n-1;
            while(left<right){
                if(grid[i][left]!=grid[i][right]) num++;
                left++;
                right--;
            }
        }
        return num;
    }

        public int hw2(int[][] grid,int m,int n){
        int num=0;
        for(int i=0;i<n;i++){
            int top=0,bot=m-1;
            while(top<bot){
                if(grid[top][i]!=grid[bot][i]) num++;
                top++;
                bot--;
            }
        }
        return num;
    }
}

作者:菜卷
链接:https://leetcode.cn/problems/minimum-number-of-flips-to-make-binary-grid-palindromic-i/solutions/2989310/zui-shao-fan-zhuan-ci-shu-shi-er-jin-zhi-7fde/
来源:力扣(LeetCode)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
救救孩子把1 小时前
88-机器学习与大模型开发数学教程-8-6 矩阵分解与低秩近似在推荐系统中的应用
人工智能·机器学习·矩阵
不辣的皮蛋君1 小时前
2026年短视频矩阵系统实战:如何用工具实现多平台一键分发,效率提升300%
人工智能·线性代数·矩阵
じ☆冷颜〃8 小时前
Picard-Lindelöf 定理的多视角证明、推广与加权范数方法
经验分享·笔记·线性代数·数学建模
San813_LDD11 小时前
[量化]《从 L1/L2 缓存到 SIMD:矩阵乘法性能优化完全指南》
线性代数·矩阵·架构
小欣加油11 小时前
leetcode542 01矩阵
数据结构·c++·算法·leetcode·矩阵·bfs
armwind11 小时前
openISP学习7-CCM — Color Correction Matrix(色彩校正矩阵)
python·学习·矩阵
AI科技星1 天前
精细结构常数α的多维度物理比值特性及空间螺旋模型研究
人工智能·线性代数·架构·概率论·学习方法
AI科技星1 天前
基于奇合数边界的离散解析数论与双螺旋宇大统一体系(中英文双语纯净终稿)
人工智能·线性代数·架构·概率论·学习方法
写代码写到手抽筋1 天前
PMI预编码矩阵全解:矩阵含义\+系统作用\+实战案例
线性代数·矩阵·预编码算法
chsmiao2 天前
深度学习之线性代数
人工智能·深度学习·线性代数