Leetcode 861. 翻转矩阵后的得分(DAY 117) ---- 贪心算法学习期

2021/5/19 12:25:30

本文主要是介绍Leetcode 861. 翻转矩阵后的得分(DAY 117) ---- 贪心算法学习期,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

原题题目

在这里插入图片描述


代码实现(首刷自解)

class Solution {
public:
    int matrixScore(vector<vector<int>>& grid) {
        int ret = 0;
        for(int x=0;x<grid.size();++x)
        {
            if(grid[x][0])  continue;
            else
            {
                for(int y=0;y<grid[0].size();++y)
                    grid[x][y] ^= 1;
            }
        }
        ret += (1<<(grid[0].size()-1)) * grid.size();
        for(int y=1;y<grid[0].size();++y)
        {
            int count = 0;
            for(int x=0;x<grid.size();++x)
                if(grid[x][y])  ++count;
            ret += (1<<(grid[0].size()-1-y)) * (grid.size() >= 2*count ? grid.size()-count : count); 
        }
        return ret;
    }
};


这篇关于Leetcode 861. 翻转矩阵后的得分(DAY 117) ---- 贪心算法学习期的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程