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

LeetCode 第41~43题

目录

LeetCode 第41题:缺失的第一个正数

 LeetCode 第42题:接雨水

 LeetCode 第43题:字符串相乘

LeetCode 第41题:缺失的第一个正数

题目描述:

给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。

请你实现时间复杂度为 O(n) 并且只使用常数级别额外空间的解决方案。

难度:困难

题目链接:41. 缺失的第一个正数 - 力扣(LeetCode)

 示例1:

输入:nums = [1,2,0]
输出:3
解释:数字 1 和 2 都出现了,所以最小的缺失正整数是 3

示例2:

输入:nums = [3,4,-1,1]
输出:2
解释:1 出现了,但 2 没有出现,所以最小的缺失正整数是 2

 示例3:

输入:nums = [7,8,9,11,12]
输出:1
解释:最小的正整数 1 没有出现,所以答案是 1

提示:

1 <= nums.length <= 5 * 10^5
-2^31 <= nums[i] <= 2^31 - 1

解题思路:

方法一:原地哈希法

  •  数组长度为n,那么缺失的第一个正整数一定在【1,n+1】范围内。
  • 可以将数字k放到数组的第k-1个位置上
  • 遍历完成后,第一个不在对应位置上的数字的下标加1就是答案
int firstMissingPositive(int* nums,int numsSize)
{//将数组当中的非正数改为正数for(int i=0;i<numsSize;i++){if(nums[i]<=0)  nums[i] = numsSize+1;}//从1开始,如果存在数字将对应位置的数字标记为负数for(int i=0;i<numsSize;i++){int num = abs(nums[i]);if(num<=numsSize)  nums[num-1] = -abs(nums[num-1]);}//返回第一个没有出现的整数,对应于数组的第一个正数的位置+1for(int i=0;i<numsSize;i++){if(nums[i]>0)  return i+1;}//如果上述for循环没有return,则说明对应位置都有正整数,则返回下一个位置对应的正整数return numsSize+1;
}

方法二:置换法

int firstMissingPositive(int* nums,int numsSize)
{for(int i=0;i<numsSize;i++){//当nums[i]在数组索引范围内,并且数字对应的索引-1的位置没有出现该数字的时候//交换两者的位置while(nums[i]>0 && nums[i]<=numsSize && nums[nums[i]-1]!=nums[i]){int t = nums[nums[i]-1];nums[nums[i]-1] = nums[i];nums[i]=t;}for(int i=0;i<numsSize;i++){if(nums[i]!=i+1)  return i+1;}return numsSize+1;}
}

 LeetCode 第42题:接雨水

题目描述:

给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。

难度:困难

题目链接:42. 接雨水 - 力扣(LeetCode)

示例1:

 

输入:height = [0,1,0,2,1,0,1,3,2,1,2,1]
输出:6
解释:上面是由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表示的高度图,在这种情况下,可以接 6 个单位的雨水(蓝色部分表示雨水)。

示例2:

输入:height = [4,2,0,3,2,5]
输出:9

提示:

n == height.length
1 <= n <= 2 * 10^4
0 <= height[i] <= 10^5

 解题思路:双指针

  • 使用左右指针分别指向数组两端,每个位置能接的雨水量=min(左侧最大高度,右侧最大高度)-当前高度
  • 每次移动较小的那一侧的指针
  • 累加当前位置能接的雨水量 
int Trap(int* height,int numsSize)
{if(height==null || numsSize<3)  return 0;int left = 0,right = numsSize-1;int leftMax = 0,rightMax = 0;int result = 0;while(left<right){//更新左右两侧的最大高度leftMax = fmax(leftMax,height[left]);rightMax = fmax(rightMax,height[right]);//移动较小的一侧if(leftMax<rightMax) {result = result+leftMax - height[left];left++;}else{result = result+rightMax - height[right];right--;}}return result;
}

 LeetCode 第43题:字符串相乘

题目描述:

给定两个以字符串形式表示的非负整数 num1 和 num2,返回 num1 和 num2 的乘积,它们的乘积也表示为字符串形式。

注意:不能使用任何内置的 BigInteger 库或直接将输入转换为整数。

难度:中等

题目链接:43. 字符串相乘 - 力扣(LeetCode)

示例1:

输入:num1 = "2", num2 = "3"
输出:"6"

 示例2:

输入:num1 = "123", num2 = "456"
输出:"56088"

提示:

1 <= num1.length, num2.length <= 200
num1 和 num2 只能由数字组成
num1 和 num2 都不包含任何前导零,除了数字0本身

解题思路:竖乘法

  •  两个长度分别为m和n的数字相乘,结果最多有m+n位
  • 从个位开始,逐位相乘并累加到对应位置
  • 处理进位
  • 去除前导零,转换为字符串 
string Multiply(char* num1,char* num2)
{if(num1==“0” || num2=="0")  return "0";int m = strlen(num1),n=strlen(num2);char* result = (char*)malloc(m+n+1);for(int i=m-1;i>=0;i--){for(int j=n-1;j>=0;j--){int mul = (num1[i]-'0')*(num2[j]-'0')//定义高位和低位int p1=i+j,p2=i+j+1;//叠加到结果数组int sum = mul+result[p2];result[p2] = sum %10;result[p1] = result[p1]+sum/10;}}//在result数组中找到第一个不为0的数字,并开始输出bool flag=true;char* str = (char*)malloc(m+n+1);for(int k=m+n;k>=0;k--){if(result[k]==0 && flag==true) continue;flag =false;str[k]=result[k];}return strlen(str)==0 ? "0" : str;
}

相关文章:

LeetCode 第41~43题

目录 LeetCode 第41题&#xff1a;缺失的第一个正数 LeetCode 第42题&#xff1a;接雨水 LeetCode 第43题&#xff1a;字符串相乘 LeetCode 第41题&#xff1a;缺失的第一个正数 题目描述&#xff1a; 给你一个未排序的整数数组 nums &#xff0c;请你找出其中没有出现的最小的…...

蓝桥杯web工作协调

在 JavaScript 里&#xff0c;Set 是一种内置对象&#xff0c;可存储任何类型的唯一值&#xff0c;无论是原始值还是对象引用。下面是 Set 集合常用方法的介绍&#xff1a; 1. 创建 Set 可以使用 new Set() 来创建一个空的 Set&#xff0c;或者传入一个可迭代对象来初始化 Se…...

夜神模拟器无法下载fiddler证书

提示信息&#xff1a; No root certificate was found. Have you enabled HTTPS traffic decryption in Fiddler yet? 在fiddler安装目录运行以下命令&#xff1a; makecert.exe -r -ss my -n "CNDO_NOT_TRUST_FiddlerRoot, ODO_NOT_TRUST, OUCreated by http://www.fidd…...

OpenCV阈值处理详解

文章目录 一、引言二、阈值处理的基本概念2.1 什么是阈值处理&#xff1f;2.2 为什么需要阈值处理&#xff1f; 三、OpenCV中的阈值处理方法3.1 基本阈值处理3.2 阈值类型详解1. 二进制阈值化 (cv2.THRESH_BINARY)2. 反二进制阈值化 (cv2.THRESH_BINARY_INV)3. 截断阈值化 (cv2…...

开源模型应用落地-Qwen2.5-Omni-7B模型-Gradio-部署 “光速” 指南(二)

一、前言 2025年3月,阿里巴巴通义千问团队开源的全模态大模型Qwen2.5-Omni-7B,犹如一记惊雷划破AI领域的长空。这个仅70亿参数的"小巧巨人",以端到端的架构实现了对文本、图像、音频、视频的全模态感知,更通过创新的Thinker-Talker双核架构,将人类"接收-思…...

【仪器仪表专题】案例:信号高电平到底是看顶端值还是最大值?

案例背景 本案例在于审查其他部门信号完整性测试报告中发现的一处有关RS232输入信号质量波形测试问题点。 首先发现测试报告中的RS232时序和信号质量测试中有一个NG项目,如下所示,可以看到T2IN的高电平要求是2.0V~3.6V之间,但是实测是3.8V,超过极限值,所以判定为NG。 …...

Git版本管理系列:(一)使用Git管理单分支

目录 基础概念介绍仓库的创建创建隐藏目录添加代码到暂存区提交代码到仓库提交记录查询比较差异标签文件删除版本回退总结 Git‌ 是一个分布式版本控制系统&#xff08;DVCS&#xff09;&#xff0c;用于跟踪文件的变更并协调多人协作开发‌&#xff0c;由 Linus Torvalds 于 2…...

Vue框架的响应式系统

以下是关于 响应式系统 的系统梳理: 一、响应式系统的核心目标 数据驱动视图:自动追踪数据变化并触发视图更新高效依赖追踪:精确识别数据与视图的依赖关系批量异步更新:优化多次数据变更的更新性能组件级更新:最小化DOM操作范围二、核心架构演进 版本核心技术优势局限性Vu…...

【Shell】模拟爬虫下载天龙八部小说

Shell脚本&#xff1a; #curl https://tianlong.5000yan.com/ -o tianlong.html grep "href" tianlong.html | grep html | awk -F"\"" { print $6 } >> urls.txt grep "href" tianlong.html | grep html | awk -F">"…...

WHAT - JavaScript 中 Object.defineProperty() 和 Proxy 对比

目录 一、Object.defineProperty()作用基本语法示例&#xff1a;定义一个只读属性示例&#xff1a;定义 getter/setter 二、Proxy作用基本语法示例&#xff1a;拦截属性访问 对比&#xff1a;defineProperty vs Proxy场景选择建议 在 JavaScript 中&#xff0c;Object.definePr…...

Qt进阶开发:模型/视图原理详解

文章目录 一、模型/视图架构概述二、模型/视图架构的组成部分2.1 模型2.2 视图2.3 委托三、模型类的介绍3.1 模型索引3.2 行和列3.3 父项4.项角色四、视图类的介绍4.1 基本概念4.2 处理项目选择五、委托类的介绍5.1 基本概念5.2 自定义委托六、数据-窗口映射器一、模型/视图架构…...

d202547

目录 一、sql-每月交易 I 二、 sql-按日期分组销售产品 三、sql-列出指定时间段内所有的下单产品 四、 第k个大的数 一、sql-每月交易 I 题目意思就是把国家名称&#xff0c;和年月一样的分为一组&#xff0c;在这组数据中进行计数 题目给的日期格式是yyyy-mm-ss,可以使用l…...

pulsar使用指南

Apache Pulsar 是 Apache 软件基金会顶级项目&#xff0c;是下一代云原生分布式消息流平台&#xff0c;集消息、存储、轻量化函数式计算为一体&#xff0c;采用计算与存储分离架构设计&#xff0c;支持多租户、持久化存储、多机房跨区域数据复制&#xff0c;具有强一致性、高吞…...

底盘---麦克纳姆轮(Mecanum Wheel)

一、基本定义与起源 定义&#xff1a;麦克纳姆轮是一种实现全向移动的特殊轮式结构&#xff0c;通过在主轮周边安装多个倾斜的辊子&#xff08;小轮&#xff09;&#xff0c;使设备能够在平面上向任意方向移动&#xff08;包括横向、斜向、旋转等&#xff09;&#xff0c;无需…...

内网文件传输新体验,聊天、传输、自定义,一应俱全

Flix 是一款高效、便捷的跨平台局域网文件传输工具&#xff0c;支持 Windows、macOS、Android、iOS 和 Linux 等多种操作系统。它以简洁直观的聊天式界面为特色&#xff0c;让用户能够像发送消息一样轻松地传输文件&#xff0c;无需复杂的设置或登录。Flix 支持大文件和多种格式…...

深入解析嵌入式Linux系统架构:从Bootloader到用户空间

B站视频链接,请多多关注本人B站&#xff1a; &#x1f4cc; Yocto项目实战教程&#xff1a;第二章 视频讲解 目录 第2章 Linux系统架构 2.1 GNU/Linux2.2 Bootloader2.3 内核空间2.4 用户空间 总结 第2章 Linux系统架构 {#linux系统架构} 嵌入式Linux系统是Linux内核的精简版…...

一句话,十分钟,一部片!

大家好&#xff01;我是羊仔&#xff0c;专注AI工具、智能体、编程。 羊仔最近发现一个超有意思的AI工具&#xff0c;简直是为内容创作者量身打造的&#xff01;啥工具&#xff1f;Story-Flicks&#xff01; 这玩意儿能干啥呢&#xff1f;简单来说&#xff0c;一句话&#xf…...

【橘子大模型】使用streamlit来构建自己的聊天机器人(下)

一、简介 我们之前完成了一个简易的聊天机器人&#xff0c;但是还留下了一些问题没有解决&#xff0c;比如如何开启新的会话。如何切换session_id&#xff0c;如何把对话做成流式的输出。这些我们就会在今天来完成。 二、关于新的会话和session_id from dotenv import load_…...

【合新通信】光纤延迟线(ODL)的原理

光纤延迟线是一种利用光学原理实现信号传输的设备&#xff0c;主要用于雷达、通信和测量等领域。以下是光纤延迟线的基本原理和工作方式&#xff1a; 技术原理 光纤延迟线通过相位控制器和分束器来处理输入信号。具体来说&#xff0c;数据信号和参考信号同时输入分束器&#x…...

Altium Designer——规则设置

规则 间距规则&#xff1a; 线宽&#xff1a;6mil > x > 4mil 1.在菜单栏中选择 设计 ——》 规则 根据下图双击对应的Clearance规则&#xff0c;更改红圈中的数字为6mil&#xff0c;然后点击应用再点击确定。 这个间距是元素之间&#xff08;走线、铺铜、元器件&#x…...

智谛达科技:以创新为翼,翱翔AI人形机器人蓝海

在科技创新的浩瀚星空中,智谛达科技集团犹如一颗璀璨的明星,以其独特的创新光芒,照亮了AI人形机器人的广阔蓝海。这家在AI领域深耕多年的企业,始终秉持着创新为翼的发展理念,不断突破技术瓶颈,拓展应用场景,以卓越的实力和前瞻性的思维,引领着人形机器人行业的未来发展。 智谛达…...

前后端接口参数详解与 Mock 配置指南【大模型总结】

前后端接口参数详解与 Mock 配置指南 一、前端请求参数类型及 Mock 处理 1.1 URL 路径参数 (Path Parameters) 场景示例&#xff1a; GET /api/users/{userId}/orders/{orderId}Mock.js 处理&#xff1a; Mock.mock(/\/api\/users\/(\d)\/orders\/(\d)/, get, (options) &g…...

RPC与其他通信技术的区别,以及RPC的底层原理

1、什么是 RPC&#xff1f; 远程过程调用&#xff08;RPC&#xff09; 是一种协议&#xff0c;它允许程序在不同计算机之间进行通信&#xff0c;让开发者可以像调用本地函数一样发起远程请求。 通过 RPC&#xff0c;开发者无需关注底层网络细节&#xff0c;能够更专注于业务逻…...

汽车售后ODX 和 OTX 详细分析

在汽车售后诊断领域&#xff0c;ODX 和 OTX 都是重要的标准&#xff0c;但它们的应用场景和特点有所不同&#xff0c;难以简单地评判哪个是绝对的主流。以下是对它们的详细分析。 ODX&#xff08;Open Diagnostic data eXchange&#xff09; 概述&#xff1a;ODX 是由 ASAM 制…...

深度学习天崩开局

李沐大神的d2l包导入&#xff0c; 这玩意需要python311版本&#xff0c;我现在版本已经313了&#xff0c;作为一个天生要强的男人&#xff0c;我是坚决不向低版本低头的。 然后我就研究啊&#xff0c;各种翻资料啊&#xff0c;然后deepseek加豆包都翻烂了&#xff0c; 最终所…...

面试算法高频04-分治与回溯

分治与回溯 分治和回溯算法&#xff0c;包括其概念、特性、代码模板&#xff0c;并结合具体题目进行讲解&#xff0c;旨在帮助学员理解和掌握这两种算法的应用。 分治与回溯的概念 分治&#xff08;Divide & Conquer&#xff09;&#xff1a;本质上基于递归&#xff0c;先…...

整数编码 - 华为OD统一考试(A卷、C++)

题目描述 实现一种整数编码方法&#xff0c;使得待编码的数字越小&#xff0c;编码后所占用的字节数越小。 编码规则如下: 编码时7位一组&#xff0c;每个字节的低7位用于存储待编码数字的补码。字节的最高位表示后续是否还有字节&#xff0c;置1表示后面还有更多的字节&…...

对访问者模式的理解

对访问者模式的理解 一、场景二、不采用访问者模式1、代码2、特点 三、采用访问者模式1、代码2、特点 四、思考 一、场景 我们有一个图形系统&#xff0c;系统中有多种图形对象&#xff08;如圆形、方形等&#xff09;&#xff0c;每种图形对象都有不同的属性和行为。现在需要对…...

第三次PID状态机

以下是 apply_params 函数的实现步骤和代码示例&#xff1a; 1. 定义参数结构体 在头文件中定义 PID_Params 结构体&#xff0c;包含需要动态调整的 PID 参数&#xff1a; // ms_hal_photo_sensor.h typedef struct {float Kp; // 比例系数float Ki; // …...

如何在大型项目中有效使用TypeScript进行类型定义?

嗨&#xff0c;大家好&#xff0c;我是莫循&#xff0c;Typescript是JavaScript的超集&#xff0c;现在已经广泛用于前端开发&#xff0c;那么在项目中如何用好类型定义呢&#xff1f;以下是一些可以提供参考的案例实践。 一、类型组织策略 1. 模块化类型定义 按功能/模块划分…...

C4D XP 粒子动画云端渲染指南

在 C4D 动画制作领域&#xff0c;XP 粒子特效因其复杂的动力学计算常成为渲染瓶颈。传统本地渲染不仅耗时漫长&#xff0c;还需持续占用高配置硬件。而借助专业云渲染平台&#xff0c;创作者可突破物理限制&#xff0c;高效完成 XP 粒子动画的最终输出。 以渲染 101 平台为例&a…...

mysql知识总结 基础篇

Mysql知识总结 1. 执行一条sql语句 期间发生了什么&#xff1f;1. 如何查看mysql服务被多少个客户端链接了2. 空闲链接会一直闲置嘛&#xff1f;3. mysql的链接数量有限制嘛&#xff1f;4. 我们如何知道mysql要使用哪个索引5. 什么是覆盖索引 2. MySQL 一行记录是怎么存储的&am…...

基于条码数据生成校验密码的C++实现方案

前言 在医疗试剂、工业产品等需要严格追踪管理的领域&#xff0c;条码系统常被用于标识产品信息。本文将详细介绍4种用C实现的条码密码生成算法&#xff0c;这些算法可以根据条码前11位数据生成2位校验密码&#xff08;第9、10位&#xff09;&#xff0c;用于数据校验或简单防…...

前端工具方法整理

文章目录 1.在数组中找到匹配项&#xff0c;然后创建新对象2.对象转JSON字符串3.JSON字符串转JSON对象4.有个响应式对象&#xff0c;然后想清空所有属性5.判断参数不为空6.格式化字符串7.解析数组内容用逗号拼接 1.在数组中找到匹配项&#xff0c;然后创建新对象 const modifi…...

[数据结构]图krusakl算法实现

目录 Kruskal算法 Kruskal算法 我们要在连通图中去找生成树 连通图&#xff1a;在无向图中&#xff0c;若从顶点v1到顶点v2有路径&#xff0c;则称顶点v1与顶点v2是连通的。如果图中任意一对顶点都是连通的&#xff0c;则称此图为连通图。 生成树&#xff1a;一个连通图的最小…...

18-产品经理-跟踪进度

禅道是一个可以帮助产品经理跟踪研发进度的系统。通过禅道&#xff0c;产品经理可以从多个角度了解产品的研发状态。在仪表盘中&#xff0c;可以展示所有产品或单一产品的概况&#xff0c;包括需求、计划和发布数量&#xff0c;研发需求状态&#xff0c;Bug修复率和计划发布数。…...

华为机试—挑7

题目 你需要统计 1 到 n 之间与 7 有关的数字的个数。 与 7 有关的数字包括&#xff1a; 是 7 的倍数&#xff08;如 7,14,21 等&#xff09;&#xff1b;包含数字 7&#xff08;如 17,27,37,⋯ ,70,71,72,⋯等&#xff09;。 示例 输入&#xff1a;20 输出&#xff1a;3 说…...

【区块链安全 | 第三十四篇】合约审计之重入漏洞

文章目录 概念漏洞代码代码审计攻击代码攻击过程总结示例修复建议审计思路 概念 以太坊的智能合约可以互相调用&#xff0c;也就是说&#xff0c;一个合约可以调用另一个合约的函数。除了外部账户&#xff0c;合约本身也可以持有以太币并进行转账。当合约接收到以太币时&#…...

Java虚拟机——JVM(Java Virtual Machine)解析一

1.JVM是什么&#xff1f; 1.1 JVM概念 Java Virtual Machine (JVM) 是JDK的核心组件之一&#xff0c;它使得 Java 程序能够在任何支持 JVM 的设备或操作系统上运行&#xff0c;而无需修改源代码 JDK是什么&#xff0c;JDK和JVM是什么关系&#xff1f;1.Java IDE(Integrated …...

【JVM】question

问题 JVM线程是用户态还是内核态 java线程在jdk1.2之前&#xff0c;是基于名为“绿色线程”的用户线程实现的&#xff0c;这导致绿色线程只能同主线程共享CPU分片&#xff0c;从而无法利用多核CPU的优势。 由于绿色线程和原生线程比起来在使用时有一些限制&#xff0c; jdk1.2…...

页面编辑器CodeMirror初始化不显示行号或文本内容

延迟刷新 本来想延迟100毫秒的&#xff0c;但是会出现样式向左偏移的情况&#xff0c;于是试了试500毫秒&#xff0c;发现就没有问题了&#xff0c;可能是样式什么是需要一个加载过程吧。 useEffect(() > {editorRef.current?.setValue(value || );setTimeout(() > {edi…...

顺序表——C语言实现

目录 一、线性表 二、顺序表 1.实现动态顺序表 SeqList.h SeqList.c Test.c 问题 经验&#xff1a;free 出问题&#xff0c;2种可能性 解决问题 &#xff08;2&#xff09;尾删 &#xff08;3&#xff09;头插&#xff0c;头删 &#xff08;4&#xff09;在 pos 位…...

OpenCV 图形API(21)逐像素操作

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 在OpenCV的G-API模块中&#xff0c;逐像素操作指的是对图像中的每个像素单独进行处理的操作。这些操作可以通过G-API的计算图&#xff08;Graph …...

车载联网终端4G汽车TBOX介绍定义与概述

汽车 TBOX&#xff08;Telematics Box&#xff09;是专为汽车设计的远程通信终端设备&#xff0c;属于车联网系统的关键组成部分。车联网系统一般包含主机、汽车 T - BOX、手机 APP 及后台系统。融合了车身网络和 4G 无线通信技术&#xff0c;为汽车提供丰富的 Telematics 服务…...

CentOS无法安装Vim文本编辑器问题以及解决方法

1.问题一&#xff1a;用户权限不够 解决方法一&#xff1a;切换到root用户 解决方法二&#xff1a;给本用户添加权限 2.问题二&#xff1a;镜像源问题&#xff1a;官方镜像源可能已经失效 解决方法&#xff1a; 1. 检查网络连接 2. 检查和配置 DNS 3. 更换镜像源&#…...

Kettle如何与应用集成

Kettle&#xff08;Pentaho Data Integration&#xff0c;PDI&#xff09;可以通过多种方式与应用程序集成&#xff0c;以下是7种主流方法及具体实现示例&#xff1a; 一、命令行调用&#xff08;最基础&#xff09; # 执行转换&#xff08;Transformation&#xff09; ./pan.…...

Pytorch torch.nn.utils.rnn.pad_sequence 介绍

torch.nn.utils.rnn.pad_sequence 是 PyTorch 中一个用于填充序列的实用函数&#xff0c;它主要用于处理长度不一的序列数据&#xff0c;将这些序列填充到相同的长度&#xff0c;以便能将它们组合成一个批量&#xff08;batch&#xff09;输入到神经网络中。以下是详细介绍&…...

4.7正则表达式

1.字符匹配 一般字符匹配自身. 匹配任意字符(换行符\n除外),一个点占一位\转义字符&#xff0c;使其后一个字符改变原来的意思(\.就是.)[......]字符集,对应的位置可以是字符集中的任意字符.字符集中的字符可以逐个列出,也可以给出范围如[abc]或[a-c] [^abc] 表示取反&#xf…...

CogPatInspectTool工具

CogPatInspectTool是康耐视中的一种模板比对的视觉检测工具&#xff0c;主要用于产品不良检测。其核心功能是通过将输入图像与预先训练好的模板进行对比&#xff0c;识别出两者之间的差异&#xff0c;并生成高亮差异图&#xff0c;从而判断产品是否存在缺陷。 效果图 CogPatIn…...

牛客周赛 + 洛谷刷题

秘藏 #include<bits/stdc.h> using namespace std; typedef long long ll; const int N 200010; ll a[N], b[N]; int n, k; ll dp[2][N];//dp[i][j]是在i界中取了j之前的最大值 int main(){ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);cin >> n >&…...