LeetCode周赛——384
1.修改矩阵(模拟)

class Solution {
public:vector<vector<int>> modifiedMatrix(vector<vector<int>>& matrix) {int n = matrix.size();int m = matrix[0].size();vector<int> ans(m);for(int i = 0; i < m; i++)for(int j = 0; j < n; j++)ans[i] = max(ans[i], matrix[j][i]);for(int i = 0; i < m; i++)for(int j = 0; j < n; j++)if(matrix[j][i] == -1) matrix[j][i] = ans[i];return matrix;}
};
2.匹配模式数组的子数组数目 I(暴力)

class Solution {
public:int countMatchingSubarrays(vector<int>& nums, vector<int>& pattern) {int n = nums.size();int m = pattern.size();int ans = 0;//枚举numsfor(int i = 0; i < n - m; i++){int f = 1;//枚举patternfor(int j = 0; j < m; j++){如果不满足,那就跳到下一个if(nums[i + j + 1] > nums[i + j] && pattern[j] != 1) f = 0;if(nums[i + j + 1] == nums[i + j] && pattern[j] != 0) f = 0;if(nums[i + j + 1] < nums[i + j] && pattern[j] != -1) f = 0;}if(f) ans++;}return ans;}
};
3.回文字符串的最大数量(贪心)

class Solution {
public:int maxPalindromesAfterOperations(vector<string>& words) {int n = words.size();vector<int> cnt(26, 0);for(int i = 0; i < n; i++)for(char c : words[i])//统计每个字符有多少个cnt[c - 'a']++;int sum = 0, ans = 0;//统计有多少对字符for(int i : cnt) sum += i / 2;//从小到大排序,允许重复数字multiset<int> s;//插入每个字符串的长度for(int i = 0; i < n; i++) s.insert(words[i].size());for(int i : s){//计算剩余多少对字符int t = sum - i / 2;//如果剩余的对数大于等于0,那就更新答案和对数if(t >= 0){sum = t;ans++;}}return ans;}
};
4.匹配模式数组的子数组数目 II(KMP)

class Solution {
public:int countMatchingSubarrays(vector<int>& nums, vector<int>& pattern) {int n = nums.size();int m = pattern.size();vector<int> s(n), ne(n);//将匹配串转化为01串,用kmp匹配for(int i = 1; i < n; i++)s[i - 1] = nums[i] > nums[i - 1] ? 1 : nums[i] == nums[i - 1] ? 0 : -1;//求next模板串ne[0] = -1;for(int i = 1, j = -1; i < m; i++){while(j >= 0 && pattern[i] != pattern[j + 1]) j = ne[j];if(pattern[i] == pattern[j + 1]) j++;ne[i] = j;}int ans = 0;//kmp匹配,但是s里只有n-1个元素for(int i = 0, j = -1; i < n - 1; i++){while(j >= 0 && s[i] != pattern[j + 1]) j = ne[j];if(s[i] == pattern[j + 1]) j++;if(j == m - 1){ans++;j = ne[j];}}return ans;}
};
相关文章:
LeetCode周赛——384
1.修改矩阵(模拟) class Solution { public:vector<vector<int>> modifiedMatrix(vector<vector<int>>& matrix) {int n matrix.size();int m matrix[0].size();vector<int> ans(m);for(int i 0; i < m; i)for(…...
C#,巴都万数列(Padonve Number)的算法与源代码
1 巴都万数列(Padovan Sequence) 巴都万数列(Padovan Sequence)是一个整数数列。 首数个值为1, 1, 1, 2, 2, 3, 4, 5, 7, 9, 12, 16, 21, 28, 37 ... 此数列以建筑师理察巴都万命名,他的论文Dom(1994年&a…...
NSSCTF Round#18 RE GenshinWishSimulator WP
恶搞原神抽卡模拟器 看到软件的界面,大致有三种思路: 修改石头数量一直抽,如果概率正常肯定能抽到(但是估计设置的概率是0)在源码里找flag的数据把抽卡概率改成100%直接抽出来 Unity逆向,根据经验应该dnsp…...
鸿蒙系统对应安卓版本
鸿蒙系统对应安卓版本 使用安卓studio 新建一个app 然后添加代码打印: Log.d(“MainActivity”, "SDK Version: " Build.VERSION.SDK_INT); 或者把 Build.VERSION.SDK_INT 添加到显示的字符串上面 我这里 build.gradle.kts 配置 android {compileSdk…...
算法-16-并查集
并查集简介 并查集:一开始,把a,b,c放入并查集,a自己一个集合,b自己一个,c自己一个 提供的方法 1.boolean isSameSet(a,b),判断ab是否在同一个集合 2.void union(a,b),把a所…...
【C/C++】2024春晚刘谦春晚魔术步骤模拟+暴力破解
在这个特别的除夕夜,我们不仅享受了与家人的温馨团聚,还被电视机前的春节联欢晚会深深吸引。特别是,魔术师刘谦的精彩表演,为我们带来了一场视觉和心灵的盛宴。在我的博客“【C/C】2024春晚刘谦春晚魔术步骤模拟暴力破解”中&…...
Java运算符和表达式
Java运算符和表达式 和C语言一样,java也有基础的运算符和表达式,用来完成一些基础的数学计算,以及逻辑运算,我们一起来学习一下吧。 算数运算符 首先,这个算数运算符与数学中即C语言的运算符的功能一样,利…...
波奇学Linux:软硬链接
ln指令建立链接 软链接 硬链接 所属者的前的数字表示硬链接数,引用计数,file.txt和soft_link是软链接所以都为2 软链接有独立inode,硬链接没有,所以硬链接不是独立文件,软链接是独立文件,且硬链接的属性会…...
HTTP网络通信协议基础
目录 前言: 1.HTTP协议理论 1.1协议概念 1.2工作原理 1.3工作场景 2.HTTP抓包工具 2.1Fiddler工具 2.2抓包原理 2.3抓包结果 3.HTTP协议格式 3.1HTTP请求 3.2HTTP响应 3.3格式总结 前言: 在了解完网络编程的传输层UDP和TCP通信协议后&#…...
Java实现河南软件客服系统 JAVA+Vue+SpringBoot+MySQL
目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 系统管理人员2.2 业务操作人员 三、系统展示四、核心代码4.1 查询客户4.2 新增客户跟进情况4.3 查询客户历史4.4 新增服务派单4.5 新增客户服务费 五、免责说明 一、摘要 1.1 项目介绍 基于JAVAVueSpringBootMySQL的河…...
【小沐学GIS】基于C++QT绘制三维数字地球Earth(OpenGL)
🍺三维数字地球系列相关文章如下🍺:1【小沐学GIS】基于C绘制三维数字地球Earth(456:OpenGL、glfw、glut)第一期2【小沐学GIS】基于C绘制三维数字地球Earth(456:OpenGL、glfw、glut)第二期3【小沐…...
如何生成生成一个修仙世界的狗血短剧剧本
如何生成生成一个修仙世界的狗血短剧剧本 生成一个修仙世界的狗血短剧剧本将上述剧本转为对话 生成一个修仙世界的狗血短剧剧本 剧本名称:《仙途情缘》 角色: 易天行:男主角,天赋异禀的修仙者,性格坚毅,正…...
【MIMO】
MIMO技术入门 1.简介 MIMO(多入多出):多天线技术。 注意:此处的多天线,并不是有多个天线板,对基站来讲指天线有多套振子(每一套振子都可以看成一个独立的天线)。 4G 8天线;5G 64T64R;不仅基站…...
ZooKeeper分布式锁
ZooKeeper是一个开源的分布式协调服务,它主要用于维护配置信息、提供分布式同步、命名服务等。ZooKeeper的数据模型类似于文件系统,它的数据结构中的每个数据节点称为znode,可以用它来实现分布式锁。 ZooKeeper分布式锁的原理: …...
WPF是不是垂垂老矣啦?平替它的框架还有哪些
WPF(Windows Presentation Foundation)是微软推出的一种用于创建 Windows 应用程序的用户界面框架。WPF最初是在2006年11月推出的,它是.NET Framework 3.0的一部分,为开发人员提供了一种基于 XAML 的方式来构建丰富的用户界面。 W…...
浅析Linux追踪技术之ftrace:Tracepoint
文章目录 概述Tracepoint使用定义Tracepoint添加Tracepoint调用 Tracepoint数据结构TRACE_EVENT实现DECLARE_TRACE__DECLARE_TRACE trace_xxx函数相关参考 概述 Tracepoint(跟踪点)是添加到代码流程中的调用点,并且允许开发者注册自定义的回…...
python ftp文件断点续传 并判断ftp文件下载完成
在Python中实现FTP文件的断点续传,通常涉及到以下步骤: 连接到FTP服务器。获取远程文件的大小。检查本地文件是否存在以及它的大小。如果本地文件不存在或大小小于远程文件,从上次中断的位置开始下载。下载完成后,检查文件大小以…...
SpringBoot+Vue3 完成小红书项目
简介 该项目采用微服务架构,实现了前后端分离的系统设计。在前端,我们选择了 Vue3 配合 TypeScript 和 ElementUi 框架,以提升开发效率和用户体验。而在后端,则是运用 SpringBoot 和 Mybatis-plus 进行开发,保证了系统…...
springboot集成Sa-Token及Redis的redisson客户端
文章目录 什么是Sa-Token?为什么集成Redis的redisson客户端?如何集成?maven依赖application.yml配置过滤器配置验证参考什么是Sa-Token? Sa-Token 是一个轻量级 Java 权限认证框架,主要解决:登录认证、权限认证、单点登录、OAuth2.0、分布式Session会话、微服务网关鉴权…...
SQL世界之命令语句Ⅴ
目录 一、SQL CREATE INDEX 语句 1.SQL CREATE INDEX 语句 2.SQL CREATE INDEX 语法 3.SQL CREATE UNIQUE INDEX 语法 4.SQL CREATE INDEX 实例 二、SQL 撤销索引、表以及数据库 1.SQL DROP INDEX 语句 2.SQL DROP TABLE 语句 3.SQL DROP DATABASE 语句 4.SQL TRUNCA…...
后进先出(LIFO)详解
LIFO 是 Last In, First Out 的缩写,中文译为后进先出。这是一种数据结构的工作原则,类似于一摞盘子或一叠书本: 最后放进去的元素最先出来 -想象往筒状容器里放盘子: (1)你放进的最后一个盘子(…...
深入剖析AI大模型:大模型时代的 Prompt 工程全解析
今天聊的内容,我认为是AI开发里面非常重要的内容。它在AI开发里无处不在,当你对 AI 助手说 "用李白的风格写一首关于人工智能的诗",或者让翻译模型 "将这段合同翻译成商务日语" 时,输入的这句话就是 Prompt。…...
阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...
云启出海,智联未来|阿里云网络「企业出海」系列客户沙龙上海站圆满落地
借阿里云中企出海大会的东风,以**「云启出海,智联未来|打造安全可靠的出海云网络引擎」为主题的阿里云企业出海客户沙龙云网络&安全专场于5.28日下午在上海顺利举办,现场吸引了来自携程、小红书、米哈游、哔哩哔哩、波克城市、…...
Cesium1.95中高性能加载1500个点
一、基本方式: 图标使用.png比.svg性能要好 <template><div id"cesiumContainer"></div><div class"toolbar"><button id"resetButton">重新生成点</button><span id"countDisplay&qu…...
【位运算】消失的两个数字(hard)
消失的两个数字(hard) 题⽬描述:解法(位运算):Java 算法代码:更简便代码 题⽬链接:⾯试题 17.19. 消失的两个数字 题⽬描述: 给定⼀个数组,包含从 1 到 N 所有…...
解决Ubuntu22.04 VMware失败的问题 ubuntu入门之二十八
现象1 打开VMware失败 Ubuntu升级之后打开VMware上报需要安装vmmon和vmnet,点击确认后如下提示 最终上报fail 解决方法 内核升级导致,需要在新内核下重新下载编译安装 查看版本 $ vmware -v VMware Workstation 17.5.1 build-23298084$ lsb_release…...
测试markdown--肇兴
day1: 1、去程:7:04 --11:32高铁 高铁右转上售票大厅2楼,穿过候车厅下一楼,上大巴车 ¥10/人 **2、到达:**12点多到达寨子,买门票,美团/抖音:¥78人 3、中饭&a…...
如何在网页里填写 PDF 表格?
有时候,你可能希望用户能在你的网站上填写 PDF 表单。然而,这件事并不简单,因为 PDF 并不是一种原生的网页格式。虽然浏览器可以显示 PDF 文件,但原生并不支持编辑或填写它们。更糟的是,如果你想收集表单数据ÿ…...
蓝桥杯 冶炼金属
原题目链接 🔧 冶炼金属转换率推测题解 📜 原题描述 小蓝有一个神奇的炉子用于将普通金属 O O O 冶炼成为一种特殊金属 X X X。这个炉子有一个属性叫转换率 V V V,是一个正整数,表示每 V V V 个普通金属 O O O 可以冶炼出 …...
