Leetcode 3071. Minimum Operations to Write the Letter Y on a Grid

  • Leetcode 3071. Minimum Operations to Write the Letter Y on a Grid
    • 1. 解题思路
    • 2. 代码实现
  • 题目链接:3071. Minimum Operations to Write the Letter Y on a Grid

1. 解题思路

这一题思路上也是比较直接的,就是首先找到这个Y字符,然后统计一下Y字符内外各自的元素的数目,然后考察将其调整为两个不同的数字所需要改变的数据个数。

对于前者,我们只需给出Y的位置判断即可,对于后者,我们只需要用总的 n × n n\times n n×n个元素减去原本就满足条件的元素个数就是需要调整的元素个数。

2. 代码实现

给出python代码实现如下:

class Solution:def minimumOperationsToWriteY(self, grid: List[List[int]]) -> int:n = len(grid)def is_inside_y(i, j):if i < n//2:return j == i or i+j == n-1else:return j == n // 2inside = defaultdict(int)outside = defaultdict(int)for i in range(n):for j in range(n):if is_inside_y(i, j):inside[grid[i][j]] += 1else:outside[grid[i][j]] += 1s = n*nreturn min(s-inside[i]-outside[j] if i != j else s+1 for i in range(3) for j in range(3))

提交代码评测得到:耗时374ms,占用内存16.6MB。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/718477.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

单词规律00

题目链接 单词规律 题目描述 注意点 pattern只包含小写英文字母s只包含小写英文字母和 ’ ’s不包含任何前导或尾随对空格s中每个单词都被 单个空格 分隔 解答思路 本题与上一次同构字符串类似&#xff0c;思路可以参照同构字符串 代码 class Solution {public boolean …

工作流/任务卸载相关开源论文分享

decima-sim 概述&#xff1a; 图神经网络强化学习处理多工作流 用的spark的仿真环境&#xff0c;mit的论文&#xff0c;价值很高&#xff0c;高被引&#xff1a;663仓库地址&#xff1a;https://github.com/hongzimao/decima-sim论文&#xff1a;https://web.mit.edu/decima/co…

企业财务规划的未来:自动化智能化如何推动全面预算管理

随着自动化和智能化对企业的影响日益明显&#xff0c;了解和接受那些有可能改变企业财务规划的技术变得愈发重要。新兴技术是推动企业增长和业务生产的中坚力量。作为企业财务专业人员&#xff0c;熟悉技术能够帮助他们了解企业的未来价值&#xff0c;从而更好的领导团队。数智…

springboot支持的常用日志框架介绍

日志系统是计算机系统中用于记录和跟踪事件、错误和信息的软件组件。在软件开发和维护过程中&#xff0c;日志系统起着至关重要的作用。它可以帮助开发人员了解软件的运行情况&#xff0c;快速定位和解决问题。本文将从以下几个方面介绍日志系统&#xff1a;日志系统概述、Spri…

Mybatis plus拓展功能-枚举处理器

目录 1 前言 2 使用方法 2.1 在application.yml中添加配置 2.2 定义枚举类 2.3 在实体类和赋值时中使用 1 前言 在我们的开发过程中&#xff0c;常常需要用一些数字来表示状态。比如说&#xff1a;1-正常&#xff0c;0-冻结。然而这样并不能做到见名知意&#xff0c;特别是…

HTML最强入门学习笔记+GitHub小项目源码

HTML学习笔记 GitHub项目链接: 点我跳转GitHub 本博客采用markdown编写&#xff0c;上面这个链接跳转就是采用了html的<a></a>的代码设计的跳转提示~ 1.创建文件可以使用 ! 在VSCode中进行快速补全从而生成一整个HTML结构 HTML组成 <!DOCTYPE html><htm…

vscode——远端配置及一些问题解决

vscode——远端配置 安装Remote -SSH插件配置config本地变化一些问题缺失核心关闭vscode自动更新 尝试写入管道不存在hostname -I 查出来的ip连不上 我们之前大概了解了vscode的本地设置&#xff0c;我们之前提过&#xff0c;vscode是一款编辑器&#xff0c;在文本编辑方面有着…

Windows安装Neo4j数据库教程(3.X版本)

安装java的jdk&#xff08;jdk1.8仅支持Neo4j 3.X版本&#xff09;去 Index of /doc/neo4j/ 下载目标版本的Windows zip安装包将安装包解压到任意目录&#xff0c;并记住解压后带版本号的文件夹路径添加系统环境变量&#xff0c;变量名&#xff1a;NEO4J_HOME&#xff0c;变量值…

程序员的金三银四求职宝典:如何在关键时期脱颖而出?

个人主页&#xff1a;17_Kevin-CSDN博客 随着春天的脚步渐近&#xff0c;程序员们的求职热潮也随之而来。在这个被称为“金三银四”的招聘季&#xff0c;如何从众多求职者中脱颖而出&#xff0c;成为了许多程序员关注的焦点。本文将为你提供一份全面的求职宝典&#xff0c;助你…

前端架构: 脚手架通用框架封装之CommonJS和ESM混合开发兼容解决(教程五)

CommonJS 和 ESModule 混合开发 接上文&#xff0c;仍旧在 abc-cli 项目中参考&#xff1a;https://blog.csdn.net/Tyro_java/article/details/136433159现在要在脚手架项目中安装 chalk 依赖&#xff0c;因为在 abc-cli 项目几乎都是 CommonJS的实现而 chalk 这个依赖源码是基…

彻底剖析激光-视觉-IMU-GPS融合SLAM算法:理论推导、代码讲解和实战

自主导航是机器人与自动驾驶的核心功能&#xff0c;而SLAM技术是实现自主导航的前提与关键。现有的机器人与自动驾驶车辆往往会安装激光雷达&#xff0c;相机&#xff0c;IMU&#xff0c;GPS等多种模态的传感器&#xff0c;而且已有许多优秀的激光SLAM与视觉SLAM算法。但是每种…

获取wifi内容信息(仅供学习使用,勿作他用)

文章目录 背景代码实现槽点槽点 1槽点2总结背景 上一篇文章我们讲解学习了密码字典生成,下面我们来看一下如何获取wifi信息 代码实现 下面代码,附带注释,可以很清晰的看明白每一行代码具体是什么含义,通俗易通的变量定义,已经函数调用。如有任何不明白的地方可以随时联…

曲线生成 | 图解Dubins曲线生成原理(附ROS C++/Python/Matlab仿真)

目录 0 专栏介绍1 什么是Dubins曲线&#xff1f;2 Dubins曲线原理2.1 坐标变换2.2 单步运动公式2.3 曲线模式 3 Dubins曲线生成算法4 仿真实现4.1 ROS C实现4.2 Python实现4.3 Matlab实现 0 专栏介绍 &#x1f525;附C/Python/Matlab全套代码&#x1f525;课程设计、毕业设计、…

c语言:转移表的实现

Hello,宝子们&#xff01;今天我们来模拟实现一下我们生活中的应用最频繁的工具&#xff1a;计算器&#xff0c;实现计算器有三种方式。 废话不多说&#xff0c;直接上代码&#xff0c;计算器的一般实现&#xff1a; #include <stdio.h> int add(int a, int b)//加法函数…

Foxmail快捷键设置问题

当快捷键设置错误时不会生效&#xff0c;原来的快捷键仍有效&#xff0c;即使禁用快捷键功能&#xff0c;原先快捷键仍有效。正确的快捷键&#xff1a; 1. 不能是空&#xff08;NULL&#xff09; 2. 应该设置按键值只有一个的键盘按钮。

力扣字符串篇

以下解题思路来自代码随想录以及官方题解。 文章目录 344.反转字符串541.反转字符串||151.反转字符串中的单词28.找出字符串中第一个匹配项的下标459.重复的字符串 344.反转字符串 编写一个函数&#xff0c;其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给…

怎样查询到pycharm终端中执行过的命令?

pycharm终端中记录了曾经运行过的命令&#xff0c;怎样才能查询到全部曾经运行过的命令呢&#xff1f; 怎样查询到pycharm终端中执行过的命令&#xff1f;

【动态规划专栏】

动态规划基础知识 概念 动态规划&#xff08;Dynamic Programming&#xff0c;DP&#xff09;&#xff1a;用来解决最优化问题的算法思想。 动态规划是分治思想的延伸&#xff0c;通俗一点来说就是大事化小&#xff0c;小事化无的艺术。 一般来说&#xff0c;…

【CSS】初学轻松学会使用Flex布局

目录 什么是Flex布局如何开始使用Flex布局Flex容器的属性Flex项目的属性举个例子 什么是Flex布局 Flex布局是一种基于盒子模型的布局方式&#xff0c;它让我们可以轻松地控制容器内的元素在主轴和交叉轴上的排列方式。通过设置不同的Flex属性&#xff0c;我们可以实现各种不同…

探索Hadoop的三种运行模式:单机模式、伪分布式模式和完全分布式模式

目录 前言一、 单机模式二、 伪分布式模式三、 完全分布式模式&#xff08;重点&#xff09;3.1 准备工作3.2 配置集群3.2.1 配置core-site.xml 文件3.2.2 配置hdfs-site.xml 文件3.2.3 配置yarn-site.xml 文件3.2.4 配置mapred-site.xml 文件 3.3 启动集群3.3.1 配置workers3.…