美文网首页
每日一题20201207(861. 翻转矩阵后的得分)

每日一题20201207(861. 翻转矩阵后的得分)

作者: 米洛丶 | 来源:发表于2020-12-06 14:33 被阅读0次

链接就不放了 容易被和谐

image-20201207142055840

思路

  • 贪心

    只要保证每一行的数是最大的,那么总的数字就是最大的。

    怎么保证每一行的数字是最大的呢,高位越大,整个数字就越大。

    分3步:

    1. 把所有高位都变成1
    2. 开始遍历第2到N行,把每列里面0比较多的进行旋转,保障1比0多
    3. 遍历求和
class Solution:
    def matrixScore(self, A: List[List[int]]) -> int:
        for l in range(len(A)):
            # 把每一列第一个数为0的行进行替换
            if A[l][0] == 0:
                self.changeLine(A, l)
        for k in range(len(A[0])):
            for _ in range(1, len(A)):
                self.changeColumn(A, k)
        result = 0
        for l in range(len(A)):
            temp = 0
            for c in range(len(A[l])):
                temp = temp + A[l][c] * 2 ** (len(A[l]) - c - 1)
            result += temp
        return result
    
    def changeLine(self, A, line):
        for i in range(len(A[line])):
            A[line][i] = 1 - A[line][i]
    
    def changeColumn(self, A, col):
        avg = sum([A[x][col] for x in range(len(A))]) / len(A)
        # 如果这一列加起来平均数小于0.5,那么说明0比1多
        if avg < 0.5:
            for l in range(len(A)):
                A[l][col] = 1 - A[l][col]

image-20201207142914652

相关文章

  • 861. 翻转矩阵后的得分(Python)

    难度:★★★☆☆类型:数组方法:数学 力扣链接请移步本题传送门[https://leetcode-cn.com/p...

  • [leetcode]翻转矩阵后的得分&&week

    题目链接:翻转矩阵后的得分 一、题目: 有一个二维矩阵 A 其中每个元素的值为 0 或 1 。 移动是指选择任一行...

  • leetCode进阶算法题+解析(六十)

    翻转矩阵后的得分 题目:有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或...

  • T861、翻转矩阵后的得分

    有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 ...

  • flipud,fliplr

    flipud 将矩阵上下翻转 fliplr 将矩阵左右翻转

  • 翻转矩阵后的得分

    有一个二维矩阵 A 其中每个元素的值为 0 或 1 。移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 ...

  • 矩阵翻转

    题目链接:https://nanti.jisuanke.com/t/5晓萌最近在做一个翻转图片的应用,你可能也知道...

  • 12、转置矩阵

    1、题目如下: 给定一个矩阵 A, 返回 A 的转置矩阵。 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与...

  • leetcode-数组篇-转置数组(867)

    题目 给定一个矩阵 A, 返回 A 的转置矩阵。 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。 ...

  • LeetCode 867. 转置矩阵

    题目 给定一个矩阵 A, 返回 A 的转置矩阵。 矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。 ...

网友评论

      本文标题:每日一题20201207(861. 翻转矩阵后的得分)

      本文链接:https://www.haomeiwen.com/subject/quxtgktx.html