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)
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
相关推荐
TracyCoder1232 小时前
LeetCode Hot100(46/100)——74. 搜索二维矩阵
算法·leetcode·矩阵
4 小时前
2.12矩阵问题,发牌,数字金字塔
线性代数·算法·矩阵
passxgx7 小时前
12.2 协方差矩阵与联合概率
线性代数·矩阵·概率论
Σίσυφος19007 小时前
四元数 欧拉角 旋转矩阵
人工智能·算法·矩阵
赛博云推-Twitter热门霸屏工具9 小时前
从手动运营到自动化矩阵:Twitter热门霸屏的技术化实现逻辑
矩阵·自动化·twitter
weixin_553132079 小时前
探索Vortex开源GPGPU:RISC-V SIMT架构(4-2),TCU 矩阵计算(1)
矩阵·架构·github·risc-v·wmma·simt·tcu
AI科技星10 小时前
张祥前统一场论 22 个核心公式及常数
服务器·人工智能·线性代数·算法·矩阵·概率论
维度攻城狮10 小时前
Python控制系统仿真案例-RLC电路系统
python·线性代数·矩阵
㓗冽10 小时前
矩阵问题(二维数组)-基础题70th + 发牌(二维数组)-基础题71th + 数字金字塔(二维数组)-基础题72th
c++·算法·矩阵
橙-极纪元11 小时前
AI代码生产部署安全标准作业程序(SOP)的附件1:风险评估矩阵
人工智能·安全·矩阵