[LeetCode周赛复盘] 第 92 场双周赛20221015

news/2024/5/2 18:51:04/文章来源:https://blog.csdn.net/liuliangcan/article/details/128064768

[LeetCode周赛复盘] 第 92 场双周赛20221015

    • 一、本周周赛总结
    • 二、 [Easy] 6249. 分割圆的最少切割次数
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 三、[Medium] 6277. 行和列中一和零的差值
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 四、[Medium] 6250. 商店的最少代价
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 五、[Hard] 6251. 统计回文子序列数目
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 六、参考链接

一、本周周赛总结

  • 没打,但T4不会。
  • T2模拟。
  • T3前后缀分解。
  • T4前后缀分解。

二、 [Easy] 6249. 分割圆的最少切割次数

链接: 6249. 分割圆的最少切割次数

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 1的话不用切。
  • 奇数必须奇数刀。
  • 偶数可以对半切。

3. 代码实现

class Solution:def numberOfCuts(self, n: int) -> int:if n == 1:return 0if n &1:return nreturn n//2

三、[Medium] 6277. 行和列中一和零的差值

链接: 66277. 行和列中一和零的差值

1. 题目描述

在这里插入图片描述

2. 思路分析

按题意模拟即可。

3. 代码实现

class Solution:def onesMinusZeros(self, grid: List[List[int]]) -> List[List[int]]:m,n = len(grid),len(grid[0])cols = [0]*nrows = [sum(r) for r in grid]for i in range(m):for j in range(n):cols[j] += grid[i][j]diff = [[0]*n for _ in range(m)]for i in range(m):for j in range(n):diff[i][j] = rows[i]*2-m + cols[j]*2-nreturn diff

四、[Medium] 6250. 商店的最少代价

链接: 6250. 商店的最少代价

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 枚举在每个时间点关门前后的代价。
  • 显然前边的代价就是前缀里N的个数。
  • 后边的代价就是Y所有的个数-前缀里Y的个数。

3. 代码实现

class Solution:def bestClosingTime(self, customers: str) -> int:n = len(customers)Y = customers.count('Y')N = n - Ya =b=0ans = mn = inffor i in range(n):c = b+Y-aif c < mn:ans = i mn = ca+=customers[i]=='Y'             b+=customers[i]=='N'c = b+Y-aif c < mn:ans = nmn = c return ans

五、[Hard] 6251. 统计回文子序列数目

链接: 6251. 统计回文子序列数目

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 由于长度是5,所以可以枚举所有位置作为中心点,左右各两个值。用乘法原理计算两边相同的值数量累加到答案中即可。
  • 问题转化成对每个位置,前缀的2位组合以及后缀2位组合的数目快速求解。这可以用哈希表然后跟着枚举递推。
  • 由于只有两位,用因此100长度的数组即可。

3. 代码实现

MOD = 10**9+7
class Solution:def countPalindromes(self, s: str) -> int:s = list(map(int,s))suf1 = [0]*10suf2 = [0]*100for v in s:for d,c in enumerate(suf1):suf2[d*10+v] += csuf1[v] += 1pre1 = [0]*10pre2 = [0]*100ans = 0for v in s:suf1[v] -= 1for d,c in enumerate(suf1):suf2[v*10+d] -= cfor i in range(10):for j in range(10):ans += suf2[i*10+j] * pre2[j*10+i]ans %= MODfor d,c in enumerate(pre1):pre2[d*10+v] += cpre1[v]+=1return ans

六、参考链接

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

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

相关文章

77.【JavaWeb文件上传和邮件发送04】

JavaWeb(二十五)、文件上传1.准备工作2.实用类介绍3.思维导图:4.正戏开始5.完整代码(二十六)、邮箱发送1.邮箱发送的原理:2.服务器的原理3.下载两个jar包4.基本类:5.全部代码(二十七)、网站注册发送邮件实现(二十五)、文件上传 1.首先创建一个empty项目 2.配置project项目中的…

【配送路径规划】基于matlab遗传算法求解静态外卖骑手路径规划问题【含Matlab源码 2248期】

⛄一、遗传算法求解静态外卖骑手路径规划问题 1 模型假设 外卖配送的实际运行是一个复杂的过程, 受诸多因素影响, 为了建立调度模型, 本文做如下假设。 (1) 外卖配送更多的是服务特殊群体, 所以本文认为外卖配送是一种预约型配送, 即在进行调度安排前, 己经获取了所有顾客的地…

版本控制利器——changelog

问题描述 当前&#xff0c;我们项目需要进行版本的确定&#xff0c;人工审核代码已接近尾声&#xff0c;但为了防止后续继续出现该问题&#xff0c;我希望能够做到在每次push到master时&#xff0c;更新changelog 将每一个版本的commit记录下来&#xff0c;类似于下列 解决…

C++_串口编程_官方示例:监视通信事件

这是微软官方的一个例子&#xff0c;这个例子中&#xff0c;如果不做修改&#xff0c;那么他是可以异步运行的&#xff0c;会出现一个错误&#xff1a;官方也说了一下&#xff0c;但是不太好懂&#xff0c;我拷贝过来放在这里&#xff0c;作为参考。 如果无法立即完成重叠的操作…

【Canvas】js用Canvas绘制阴阳太极图动画效果

学习JavaScript是否兴趣缺缺&#xff0c;那就需要来一个兴趣学习&#xff0c;问一下有没有兴趣用Canvas画图呢&#xff0c;可以画很多有趣的事物&#xff0c;自由发挥想象&#xff0c;收获多多哦&#xff0c;这里有一个例子&#xff0c;如何用canvas画阴阳太极图动图效果&#…

【博客544】golang pprof性能调试:寻找memory瓶颈

golang pprof性能调试&#xff1a;寻找memory瓶颈 1、前置 pprof的使用与输出列解析看姐妹篇&#xff1a;golang pprof性能调试&#xff1a;寻找cpu瓶颈 2、引入pprof到程序中&#xff0c;以调试memory瓶颈 给程序加入&#xff1a; import _ "net/http/pprof"go…

【Android App】实现在线语音合成功能(使用云知声平台和WebSocket 超详细 附源码)

需要源码和Jar包请点赞关注收藏后评论区留下QQ~~~ 一、在线语音合成 虽然国产智能机大多集成了中文语音引擎&#xff0c;但是系统自带的语音工具无法满足商用要求&#xff0c;功能单一&#xff0c;所以势必引入第三方的语音引擎&#xff0c;依靠第三方提供的开发包统一支撑语音…

缓存穿透、缓存击穿、缓存雪崩及其解决方案

缓存&#xff08;cache&#xff09;&#xff0c;大家都非常熟悉&#xff0c;几乎每个系统乃至整个计算机体系中都会用到。在分布式系统架构中&#xff0c;主要用于减轻数据库的压力&#xff0c;提高系统的响应速度和并发吞吐&#xff0c;即空间(内存)换时间。当大量的读、写请求…

2023年天津财经大学珠江学院专升本经济学专业课考试大纲

天津财经大学珠江学院2023年高职升本科专业课考试《经济学》考试大纲一、本大纲系天津财经大学珠江学院2023年高职升本科《经济学》课程考试大纲。所列考试范围出自郑健壮、王培才主编的教材《经济学基础&#xff08;第二版&#xff09;》&#xff0c;清华大学出版社&#xff0…

React - Ant Design4.x版本安装使用,并按需引入和自定义主题

React - Ant Design4.x版本安装使用&#xff0c;并按需引入和自定义主题一. 安装使用 antd二&#xff0e;antd 高级配置安装 craco&#xff0c;对 create-react-app 的默认配置进行自定义自定义主题安装 babel-plugin-import &#xff0c;按需加载组件代码和样式Ant Design官网…

mycat-3-实战篇

1 总结&#xff1a; 1&#xff1a;用的表必须在mycat的配置文件中配置。 2&#xff1a;mycat默认分片策略中&#xff0c;都是针对表的主键&#xff0c;默认是id,如果主键不是id的&#xff0c;请去rule.xml自己复制一份修改 3&#xff1a; 2 注意细讲解 1&#xff1a;schem…

车辆大全和车牌识别系统毕业设计,车牌识别系统设计与实现,车牌AI识别系统论文毕设作品参考

功能清单 【后台管理员功能】 系统设置&#xff1a;设置网站简介、关于我们、联系我们、加入我们、法律声明 广告管理&#xff1a;设置小程序首页轮播图广告和链接 留言列表&#xff1a;所有用户留言信息列表&#xff0c;支持删除 会员列表&#xff1a;查看所有注册会员信息&a…

TypeScript开启

TypeScript是什么&#xff1f; typescript是以JavaScript为基础构建的语言&#xff0c;是一个Javascript的超集&#xff0c;可以在任何支持JavaScript的平台中执行&#xff0c;typescript扩展了JavaScript&#xff0c;并添加了类型。 注意&#xff1a;ts不能被js直接解析执行&…

27个超实用Chrome DevTools 调试技巧 source 全局搜索(持续更新)

谷歌开发者工具提供了一系列的功能来帮助开发者高效 Debug 网页应用&#xff0c;让他们可以更快地查找和修复 bug。在谷歌的开发者工具中&#xff0c;有非常多有用的小工具&#xff0c;但是很多开发者并不知道。通过这篇文章&#xff0c;我把我常用的那些高效 Debug 的 Chrome …

大数据(9f)Flink双流JOIN

文章目录概述开发环境使用状态列表实现 INNER JOIN&#xff08;双流connect后CoProcessFunction&#xff09;基于间隔的JOIN&#xff08;Interval Join&#xff09;基于窗口的JOIN&#xff08;Window Join&#xff09;概述 Flink双流JOIN可用算子或SQL实现&#xff0c;FlinkSQ…

Flutter 5 大本地数据库解决方案

Flutter 5 大本地数据库解决方案 原文 https://levelup.gitconnected.com/top-5-local-database-solutions-for-flutter-development-6351cd494070 前言 这里列出了最流行的数据库解决方案以及代码示例。 选择正确的数据管理系统对于提高效率和可 extension 性以及影响可用性和…

PyQt5学习笔记--摄像头实时视频展示、多线程处理、视频编解码

目录 1--前言 2--基于Qt Designer设计ui文件 3--视频的编解码操作 4--完整代码 5--结果展示 6--存在的问题 7--参考 1--前言 ① 创建两个线程&#xff0c;主线程为ui线程&#xff0c;子线程用于读取摄像头视频&#xff0c;将处理后的图像帧数据&#xff08;处理操作可以…

JDBC操作数据库实现增、删、查、改

0.JDBC概念 实际开发中,手动的输入SQL语句是少之又少,大多数情况下是通过编译代码进行来控制自动执行. 具体操作如下: 上述展示有一个【自己写的Mysql客户端】&#xff0c;这种操作是非常容易的&#xff0c;因为各种数据库本身就提供一系列的API&#xff0c;可以让用户很方便…

内存一致性,指令重排序,内存屏障,volatile解析

文章目录为什么会存在“内存可见性”问题重排序与内存可见性的关系as-if-serial语义单线程程序的重排序规则多线程程序的重排序规则happen-before是什么解决方案&#xff1a;内存屏障Volatile关键字解决内存可见性问题的实现原理为什么会存在“内存可见性”问题 下图为x86架构…

如何利用快解析远程访问家庭智能网关

随着家庭宽带用户的暴增&#xff0c;涌现出了许多连接家居设备和控制中心的产品&#xff0c;如家庭智能网关。家庭智能网关是家居智能化的心脏&#xff0c;通过它实现系统的信息采集、信息输入、信息输出、集中控制、远程控制、联动控制等功能。 ​ 智能家庭网关具备智能家居控…