当前位置: 首页 > news >正文

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.lryc.cn/news/312270.html

相关文章:

  • 随想录算法训练营第五十一天|309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费
  • 【语言学习】std::transform函数
  • Java开发面试准备,轻松搞定SpringBoot数据校验
  • 信呼OA普通用户权限getshell方法
  • MySQL进阶之(四)InnoDB数据存储结构之行格式
  • 【Qt学习笔记】(四)Qt窗口
  • 入侵和攻击模拟 (BAS) 技术应用实践
  • 数据结构(七)——线性表的基本操作
  • Python 系统学习总结(基础语法+函数+数据容器+文件+异常+包+面向对象)
  • 汽车碰撞与刮伤的实用维修技术,汽车的车身修复与涂装修补教学
  • 网络信息安全:nginx漏洞收集(升级至最新版本)
  • 【go从入门到精通】go包,内置类型和初始化顺序
  • 【项目实战】高并发内存池(仿tcmalloc)
  • 计算机等级考试:信息安全技术 知识点一
  • 开展庆2024年“三八”国际妇女节系列纪念活动怎样向媒体投稿?
  • SpringBoot-集成Elasticsearch
  • 数据结构之顺序表及其实现!
  • Vue组件间通信实践
  • FISCO BCOS区块链平台上的智能合约压力测试指南
  • LabVIEW流量控制系统
  • Python 爱心代码
  • linux kernel物理内存概述(五)
  • 3分钟带你搞定电流采样电阻选型
  • 代码随想录算法训练营Day52 | 300.最长递增子序列、674.最长连续递增序列、718.最长重复子数组
  • 一个测试OOM killer的程序未触发OOM所带来的问题
  • SanctuaryAI推出Phoenix: 专为工作而设计的人形通用机器人
  • 李沐动手学习深度学习——4.2练习
  • CYQ.Data 支持 DaMeng 达梦数据库
  • 计网面试题整理上
  • code: 500 ] This subject is anonymous - it does not have any identifying