[LeetCode周赛复盘] 第 115 场双周赛20231014

[LeetCode周赛复盘] 第 115 场双周赛20231014

    • 一、本周周赛总结
    • 100095. 上一个遍历的整数
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100078. 最长相邻不相等子序列 I
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100077. 最长相邻不相等子序列 II
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 100029. 和带限制的子多重集合的数目
      • 1. 题目描述
      • 2. 思路分析
      • 3. 代码实现
    • 参考链接

一、本周周赛总结

  • T1 模拟。
  • T2 贪心。
  • T3 DP类似LIS,构造路径方案。
  • T4 分组前缀和优化的分组背包求方案数。
    在这里插入图片描述

100095. 上一个遍历的整数

100095. 上一个遍历的整数

1. 题目描述

在这里插入图片描述

2. 思路分析

按题意模拟即可。

3. 代码实现

class Solution:def lastVisitedIntegers(self, words: List[str]) -> List[int]:ans = []nums = []k=0for v in words:if v[0].isdigit():nums.append(int(v))k = 0 else:k += 1 if k > len(nums):ans.append(-1)else:ans.append(nums[-k])return ans 

100078. 最长相邻不相等子序列 I

100078. 最长相邻不相等子序列 I

1. 题目描述

在这里插入图片描述

2. 思路分析

方法1
  • 枚举第一个g是0还是1,然后贪心的向后取位置。

方法2
  • 直接pairwise,相邻不同了,则可以取左边的,注意记得取最后一个。

3. 代码实现

class Solution:def getWordsInLongestSubsequence(self, n: int, words: List[str], groups: List[int]) -> List[str]:def f(s):ans = [0,[]]for w, g in zip(words,groups):if g == s:ans[0]+=1ans[1].append(w)s ^= 1 return ansreturn max(f(0),f(1))[1]

100077. 最长相邻不相等子序列 II

100077. 最长相邻不相等子序列 II

1. 题目描述

在这里插入图片描述

2. 思路分析

  • n方dp。
  • 从前边满足的地方转移过来,注意记录一个from_index来储存路径。

3. 代码实现

def han(s, t):return sum(x!=y for x,y in zip(s,t))
class Solution:def getWordsInLongestSubsequence(self, n: int, words: List[str], groups: List[int]) -> List[str]:f = [1]*n from_index = [-1]*nfor i, (w, g) in enumerate(zip(words,groups)):for j in range(i):if g != groups[j] and len(w) == len(words[j]) and han(words[j], w) == 1 and f[j] >= f[i]:f[i] = f[j] + 1from_index[i] = ji = f.index(max(f))ans = []while i != -1:ans.append(words[i])i = from_index[i]return ans[::-1]                    

100029. 和带限制的子多重集合的数目

100029. 和带限制的子多重集合的数目

1. 题目描述

在这里插入图片描述

2. 思路分析

  • 题目描述很复杂,但其实是分组背包求方案数。
  • 这样的话,值域是2e4,物品数也是2e4。n方会TLE。
  • 考虑优化,我们知道分组背包先遍历组,然后遍历体积,再遍历每组里的物品。
    • 可以看到内层,f[j] += f[j-k]+…f[j-k*c],这里累计了1~c,并且间隔是一样的,考虑用前缀和优化。
    • 可以用分组前缀和,类似滑窗。参考普通前缀和,我们向前边添加k个0,方便代码。
  • 注意到,题目限制sum(nums)<=2e4,那么不同的数字最多有多少组呢?显然最小是1,2,3~,那么不同数字组最多是开方级别的。
  • 因此复杂度变成了O(r√S)。

3. 代码实现

MOD = 10**9 + 7 
class Solution:def countSubMultisets(self, nums: List[int], l: int, r: int) -> int:cnt = Counter(nums)f = [cnt[0]+1] + [0] * rs = 0for k, c in cnt.items():if k == 0:continues += k * c pre = [0]*k             for v in f:pre.append((v+pre[-k])%MOD)for j in range(min(s, r), 0, -1):# f[j] += f[j-k]+..f[j-k*c]f[j] += pre[j] - pre[max(j-k*c, 0)]f[j] %= MOD return sum(f[l:]) %MOD   

参考链接

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

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

相关文章

【数据结构】排序--选择排序(堆排序)

目录 一 堆排序 二 直接选择排序 一 堆排序 堆排序(Heapsort)是指利用堆积树&#xff08;堆&#xff09;这种数据结构所设计的一种排序算法&#xff0c;它是选择排序的一种。它是 通过堆来进行选择数据。 需要注意的是排升序要建大堆&#xff0c;排降序建小堆。 直接选择排…

HEIC转jpg

下载imagemagick,安装 https://imagemagick.org/archive/binaries/ImageMagick-7.1.1-20-Q16-HDRI-x64-dll.exe cmd D:\soft\ImageMagick-7.1.1-Q16-HDRI\magick.exe "C:\Users\Gamer\Downloads\iCloud 照片1\iCloud 照片\IMG_3889.HEIC" IMG_3889.jpg

WebSocket: 实时通信的新维度

介绍&#xff1a; 在现代Web应用程序中&#xff0c;实时通信对于提供即时更新和交互性至关重要。传统的HTTP协议虽然适合请求-响应模式&#xff0c;但对于需要频繁数据交换的场景并不理想。而WebSocket技术的出现填补了这个空白&#xff0c;为Web开发者们带来了一种高效、实时的…

Elucidating the Design Space of Diffusion-Based Generative Models 阅读笔记

文章用一种新的设计框架统一diffusion-based model&#xff0c;并使用模块化&#xff08;modular&#xff09;的思想&#xff0c;分别从采样、训练、score network设计三个方面分析和改进diffusion-based model。 之前的工作1已经把diffusion-based model统一到SDE或者ODE框架…

10-k8s-身份认证与鉴权

文章目录 一、ServiceAccount介绍二、ServiceAccount相关的资源对象三、dashboard空间示例 一、ServiceAccount介绍 ServiceAccount&#xff08;服务账户&#xff09;概念介绍 1&#xff09;ServiceAccount是Kubernetes集群中的一种资源对象&#xff0c;用于为Pod或其他资源提供…

JavaScript基础知识14——运算符:逻辑运算符,运算符优先级

哈喽&#xff0c;大家好&#xff0c;我是雷工&#xff01; 一、逻辑运算符 1、概念&#xff1a;在程序中用来连接多个比较条件时候使用的符号。 2、应用场景&#xff1a;在程序中用来连接多个比较条件时候使用。 3、逻辑运算符符号&#xff1a; 4、代码演示逻辑运算符的使用…

手机流量卡经营商城小程序的作用是什么

流量卡成为很多用户的选择&#xff0c;同时市场中也出现了不少流量卡卖家&#xff0c;基于多种形式开展生意。然而虽然市场需求度高&#xff0c;但流量卡经营难题也不少。 流量卡客户具有高忠诚度&#xff0c;然而入驻线上第三方平台&#xff0c;客户属于平台&#xff0c;无法…

四川天蝶电子商务有限公司抖音电商服务引领行业标杆

随着电子商务的飞速发展&#xff0c;四川天蝶电子商务有限公司作为一家领先的抖音电商服务提供商&#xff0c;已经脱颖而出。本文将详细解析四川天蝶电子商务有限公司的抖音电商服务&#xff0c;让您一探究竟。 一、卓越的服务理念 四川天蝶电子商务有限公司始终坚持以客户为中…

多媒体应用设计师 第3章 多媒体信息传输技术

1.数据通信技术 1.1.多媒体通信的服务质量 多媒体服务质量(Qos)指网络服务的良好程度&#xff0c; 衡量QoS的常见指标为:吞吐量&#xff0c;差错率&#xff0c;端到端延迟&#xff0c;延迟抖动,带宽&#xff0c;丢包率&#xff0c;服务可用性等。 1.2.多媒体通信的服务质量类…

flask基础开发知识学习

之前做了一些LLM的demo&#xff0c;接口用flask写的&#xff0c;但是涉及到后端的一些业务就感觉逻辑写的很乱&#xff0c;代码变成屎山&#xff0c;于是借助官方文档和GPT迅速补了一些知识&#xff0c;总结一下一个很小的模板 于是决定边学边重构之前的代码… 文章目录 代码结…

【milkv】更新rndis驱动

问题 由于windows升级到了11&#xff0c;导致rndis驱动无法识别到。 解决 打开设备管理器&#xff0c;查看网络适配器&#xff0c;没有更新会显示黄色的图标。 右击选择更新驱动

网络安全必备常识:Web应用防火墙是什么?

如今&#xff0c;很多企业都将应用架设在Web平台上&#xff0c;为用户提供更为方便、快捷的服务支持&#xff0c;例如网上银行、网上购物等。与此同时&#xff0c;应用程序组合变得前所未有的复杂和多样化&#xff0c;这为攻击者发动攻击开辟了大量媒介&#xff0c;Web应用防火…

【QT】界面布局-登陆窗口

记录页面布局-登陆窗口的流程 &#xff08;1&#xff09;继承QWidget &#xff08;2&#xff09;设置标签 &#xff08;3&#xff09;单行文本编辑 &#xff08;4&#xff09;按钮 开始设置布局&#xff0c; 法1&#xff1a;使用Horizontal layout&#xff0c;但是不方便 法2…

探索数字时代的核心:服务器如何塑造未来并助你成就大业

&#x1f337;&#x1f341; 博主猫头虎 带您 Go to New World.✨&#x1f341; &#x1f984; 博客首页——猫头虎的博客&#x1f390; &#x1f433;《面试题大全专栏》 文章图文并茂&#x1f995;生动形象&#x1f996;简单易学&#xff01;欢迎大家来踩踩~&#x1f33a; &a…

关于python pytorch 与CUDA版本相关问题

首先在终端中输入python进入python交互式环境 import torch print(torch.__version__) #注意是双下划线官网&#xff1a;https://pytorch.org/get-started/previous-versions/ CUDA Toolkit版本及可用PyTorch对应关系总结&#xff08;参考官网&#xff09; cuda版本确定后&a…

Godot C# 扩展方法持续更新

前言 为了简化Godot 的编写&#xff0c;我会将我的扩展方法写在这里面。 更新日期(2023年10月15日) Nuget 包安装 扩展方法 public static class GD_Extension{/// <summary>/// 假数据生成&#xff0c;详情请看Bogus官方文档/// </summary>public static Faker…

SBD(Schottky Barrier Diode)与JBS(Junction Barrier Schottky)

SBD和JBS二极管都是功率二极管&#xff0c;具有单向导电性&#xff0c;在电路中主要用于整流、箝位、续流等应用。两者的主要区别在于结构和性能。 结构 SBD是肖特基二极管的简称&#xff0c;其结构由一个金属和一个半导体形成的金属-半导体结构成。 JBS是结势垒肖特基二极…

机器人制作开源方案 | 行星探测车概述

1. 功能描述 行星探测车&#xff08;Planetary Rover&#xff09;是一种用于进行科学探索和勘测任务的无人车辆&#xff0c;它们被设计成能够适应各种复杂的地形条件和极端环境&#xff0c;以便收集数据、拍摄照片、采集样本等。行星探测车通常包含以下主要组件和功能&#xff…

黑马mysql教程笔记(mysql8教程)基础篇——函数(字符串函数、数值函数、日期函数、流程函数)

参考文章1&#xff1a;https://www.bilibili.com/video/BV1Kr4y1i7ru/ 参考文章2&#xff1a;https://dhc.pythonanywhere.com/article/public/1/ 文章目录 基础篇函数字符串函数常用函数使用示例实例&#xff1a;更新已有的所有员工号&#xff0c;使其满足5位数长度&#xff…

常规动态网页爬取

1.抓取动态网页“http://www.ptpress.com.cn”内容&#xff0c;将新书推荐中生活板块的书籍书名、价格和作者爬取并保存。 import requests import json import openpyxlurl https://www.ptpress.com.cn/recommendBook/getRecommendBookListForPortal?bookTagIdd5cbb56d-09ef…