1. 题目描述

2.思路分析:

1. 首先这里的翻转分为了行翻转和列翻转,我们这里只需要求如何翻转后得到最大值,有点贪心的思想,因为最大值一定是固定的

至于是什么路径到达的最大值不是我们所关心的,我们直接从最大的角度去考虑,为了最大,那么首先保证的是每行的第一列为1

,如果有哪个行的第一列不为1的话,那么就行翻转下,然后剩下就是列的问题,第一列已经被固定了,所以就不需要被考虑了,所以

直接从第二列开始考虑,从第二列开始就是比较1和0的个数谁更多了,如果0多的话,就需要列翻转了,大体思路就是这样

至于题解的代码写的比较省略,主要体现到那个最大值的比较,那个其实就是行翻转,因为比较了0和1的个数,返回值其实就是翻转后的结果了

3.代码

class Solution {
public:
int matrixScore(vector<vector<int>>& A) {
int m=A.size(),n=A[0].size(); //行数
int ret=m*(1<<(n-1));
for(int j=1;j<n;j++)
{
int tmp=0;
for(int i=0;i<m;i++)
{
if(A[i][0]==1)
{
tmp+=A[i][j];
}else
{
tmp+=(1-A[i][j]);
}
}
int k1=max(tmp,m-tmp);
ret+=k1*(1<<(n-j-1));
}
return ret;
}
};

leetcode 861 翻转矩阵后的得分的更多相关文章

  1. LeetCode 中级 - 翻转矩阵后的得分(861)

    有一个二维矩阵 A 其中每个元素的值为 0 或 1 . 移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0. 在做出任意次数的移动后,将该矩阵的每一 ...

  2. LeetCode 861翻转矩阵后得分详细解法

    1. 题目内容 有一个二维矩阵 A 其中每个元素的值为 0 或 1 . 移动是指选择任一行或列,并转换该行或列中的每一个值:将所有 0 都更改为 1,将所有 1 都更改为 0. 在做出任意次数的移动后 ...

  3. LeetCode翻转矩阵后的得分-Python3<六>

    上一篇:LeetCode子域名访问计数-Python3.7<五> 题目:https://leetcode-cn.com/problems/score-after-flipping-matr ...

  4. [Swift]LeetCode861. 翻转矩阵后的得分 | Score After Flipping Matrix

    We have a two dimensional matrix A where each value is 0 or 1. A move consists of choosing any row o ...

  5. [LeetCode] Score After Flipping Matrix 翻转矩阵后的分数

    We have a two dimensional matrix A where each value is 0 or 1. A move consists of choosing any row o ...

  6. [LeetCode] Random Flip Matrix 随机翻转矩阵

    You are given the number of rows n_rows and number of columns n_cols of a 2D binary matrix where all ...

  7. Java实现 LeetCode 519 随机翻转矩阵

    519. 随机翻转矩阵 题中给出一个 n 行 n 列的二维矩阵 (n_rows,n_cols),且所有值被初始化为 0.要求编写一个 flip 函数,均匀随机的将矩阵中的 0 变为 1,并返回该值的位 ...

  8. C#版(击败100.00%的提交) - Leetcode 151. 翻转字符串里的单词 - 题解

    版权声明: 本文为博主Bravo Yeung(知乎UserName同名)的原创文章,欲转载请先私信获博主允许,转载时请附上网址 http://blog.csdn.net/lzuacm. C#版 - L ...

  9. leetcode python翻转字符串里的单词

    # Leetcode 151 翻转字符串里的单词### 题目描述给定一个字符串,逐个翻转字符串中的每个单词. **示例1:** 输入: "the sky is blue" 输出: ...

随机推荐

  1. IDEA 创建 Vue 文件(Day_41)

    IDEA 创建 Vue 文件 1. 在setting-->plugins里安装vue插件,安装成功之后重启IDEA 如图 2. 在setting-->Editor-->File Ty ...

  2. SystemVerilog MCDF验证结构

    MCDF的设计和验证花费的时间:(工作中假设的时间) design  cycle time  ==10days how about 验证?verify? 模块越往上(大')验证花费的时间越来越大,但是 ...

  3. Vue之前后端交互

    Vue之前后端交互 一.前后端交互模式 接口调用方式 原生ajax 基于jQuery的ajax fetch axios 异步 JavaScript的执行环境是「单线程」 所谓单线程,是指JS引擎中负责 ...

  4. Relay张量集成

    Relay张量集成 Introduction NVIDIA TensorRT是一个用于优化深度学习推理的库.这种集成将尽可能多地减轻从中继到TensorRT的算子,在NVIDIA GPU上提供性能提升 ...

  5. 使用Nucleus SE实时操作系统

    使用Nucleus SE实时操作系统 Using the Nucleus SE real-time operating system 到目前为止,在本系列文章中,我们详细介绍了Nucleus SE提供 ...

  6. VB 老旧版本维护系列---有点懵逼的webserver访问

    有点懵逼的webserver访问 '定义webserver地址 Dim postUrl As String = "" '定义webserver所需xml字符串参数 Dim xmlR ...

  7. 「题解」HDU-4015 Mario and Mushrooms

    本文将同步发布于: 洛谷博客: csdn: 博客园: 简书: 题目 题目链接:HDU-4015 Mario and Mushrooms.Vjudge HDU-4015. 题意简述 马里奥初始只有 \( ...

  8. 性能工具之Jmeter-Dubbo脚本开发

    内容目录: 1.idea 环境项目部署 2.nacos 环境部署 3.dubbo插件部署 4.不带参数请求 5.带参参数请求 Apache Dubbo  是一款高性能.轻量级的开源Java RPC框架 ...

  9. 【NX二次开发】Block UI 通过浏览选择文件

    属性说明 属性   类型   描述   常规           BlockID    String    控件ID    Enable    Logical    是否可操作    Group    ...

  10. 【无线通信篇01 | Zstack协议栈】CC2530 Zigbee Zstack协议栈组网项目及详细讲解篇

    演示视频:https://www.bilibili.com/video/BV1Ew411o7Fp 物联网无线通信技术,ZigBee无线传感网络 CC2530最大的特点就是一个拥有无线收发器(RF)的单 ...