LeetCode 第90场周赛

LeetCode 856. 括号的分数 题目: 给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: () 得 1 分。 AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。 (A) 得 2 * A 分,其中 A 是平衡括号字符串。 示例 1: 输入: “()” 输出: 1 示例 2: 输入: “(())” 输出: 2 示例 3: 输入: “()()” 输出: 2 示例 4: 输入: “(()(()))” 输出:... 阅读详情

注:本文仅提供解题思路,代码为python移步点击打开链接https://github.com/calssion/Leetcode-Weekly-Contest

856. 括号的分数

给定一个平衡括号字符串 S,按下述规则计算该字符串的分数:

  • () 得 1 分。
  • AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。
  • (A) 得 2 * A 分,其中 A 是平衡括号字符串。

示例 1:

输入: "()"
输出: 1

示例 2:

输入: "(())"
输出: 2

示例 3:

输入: "()()"
输出: 2

示例 4:

输入: "(()(()))"
输出: 6

提示:

  1. S 是平衡括号字符串,且只含有 ( 和 ) 。
  2. 2 <= S.length <= 50

解:

使用栈即可,遇'('入栈,

遇')'计算分数并开始出栈操作,同时把计得的分数也重新入栈,方便后续计算。


857. 雇佣 K 名工人的最低成本

有 N 名工人。 第 i 名工人的工作质量为 quality[i] ,其最低期望工资为 wage[i] 。

现在我们想雇佣 K 名工人组成一个工资组。在雇佣 一组 K 名工人时,我们必须按照下述规则向他们支付工资:

  1. 对工资组中的每名工人,应当按其工作质量与同组其他工人的工作质量的比例来支付工资。
  2. 工资组中的每名工人至少应当得到他们的最低期望工资。

返回组成一个满足上述条件的工资组至少需要多少钱。

示例 1:

输入: quality = [10,20,5], wage = [70,50,30], K = 2
输出: 105.00000
解释: 我们向 0 号工人支付 70,向 2 号工人支付 35。

示例 2:

输入: quality = [3,1,10,10,1], wage = [4,8,2,2,7], K = 3
输出: 30.66667
解释: 我们向 0 号工人支付 4,向 2 号和 3 号分别支付 13.33333。

提示:

  1. 1 <= K <= N <= 10000,其中 N = quality.length = wage.length
  2. 1 <= quality[i] <= 10000
  3. 1 <= wage[i] <= 10000
  4. 与正确答案误差在 10^-5 之内的答案将被视为正确的。

解:

按工作质量分配,考虑每次选出K个员工,

只需要满足这K个中最大的要求,就满足了K个所有的最低工资要求。

为此需要计算每个员工的工资-工作质量比wq,并按此排序

可以建立一个小根堆,先取wq中前K个建立一个堆,

将K之后的看作待插入的元素,

将值插入到堆中同时弹出堆中的最小值。

每次都重新计算sumq。而minq取其中最小的方案。

计得的最终结果存储在minq中,minp = sumq * (wq[K-1])

其中sumq为前K个员工的工作质量总和,

需满足最大的要求,所以取wq[K-1],即前K个中最大的那个。



858. 镜面反射

有一个特殊的正方形房间,每面墙上都有一面镜子。除西南角以外,每个角落都放有一个接受器,编号为 0, 1,以及 2。

正方形房间的墙壁长度为 p,一束激光从西南角射出,首先会与东墙相遇,入射点到接收器 0 的距离为 q 。

返回光线最先遇到的接收器的编号(保证光线最终会遇到一个接收器)。

示例:

输入: p = 2, q = 1
输出: 2
解释: 这条光线在第一次被反射回左边的墙时就遇到了接收器 2 。

提示:

  1. 1 <= p <= 1000
  2. 0 <= q <= p

解:

作辅助线可知:每次在y轴上移动的距离其实是一样的,都为q

y轴上的移动距离用curr记录,每次+=q,当然每次都对2*p取余,即对一个往返距离取余(即相对起点距离)

还需要一个变量i记录这次的起点会在左边还是右边,对2取余可区分,每次i+=1

若curr==0,此时为底边接收器


859. 亲密字符串

给定两个由小写字母构成的字符串 A 和 B ,只要我们可以通过交换 A 中的两个字母得到与 B 相等的结果,就返回 true ;否则返回 false 。

示例 1:

输入: A = "ab", B = "ba"
输出: true

示例 2:

输入: A = "ab", B = "ab"
输出: false

示例 3:

输入: A = "aa", B = "aa"
输出: true

示例 4:

输入: A = "aaaaaaabc", B = "aaaaaaacb"
输出: true

示例 5:

输入: A = "", B = "aa"
输出: false

提示:

  1. 0 <= A.length <= 20000
  2. 0 <= B.length <= 20000
  3. A 和 B 仅由小写字母构成。

解:

分析情况:1、两者存在空串,返回false

    2、只存在两处不同,其他不同数为false

    3、没有不同,同时串中没有重复字符为false(交换后必然不同)

    4、两处不同交叉相等,才为true

Agentic RAG:RAG从静态到具有理解、推理、决策的Agentic RAG RAG技术演进:从静态检索到智能代理 RAG(检索增强生成)技术经历了五个关键发展阶段:基础RAG(关键词检索)、高级RAG(语义理解)、模块化RAG(灵活架构)、图RAG(知识图谱)和最新的Agentic RAG(智能代理)。Agentic RAG通过引入自主AI代理,具备反思、规划、工具使用和多代理协作能力,实现了动态决策和自适应工作流。相比传统RAG的静态检索流程,Agentic RAG能处理复杂多步推理任务,通过自我改进机制提高输出质量,并支持多专业代理协作,显著提升了RAG系统在复杂场景下的表现。 阅读详情

相关推荐

运放+三极管恒流源电路设计实战:从原理到仿真一步到位(附Multisim文件)

本文详细解析了运放与三极管构建恒流源电路的核心原理,重点阐述了负反馈机制如何实现精准的电流控制。通过Multisim仿真实战,从电路搭建、参数计算到负载调整率与动态响应分析,一步步指导设计过程,并提供常见故障的调试技巧与PCB设计要点,帮助工程师从理论平稳过渡到可靠实践。

7z8x2c4v6b9的博客 711

【LeetCode周赛】第 361 场周赛

LeetCode第361场周赛

lunaol的博客 417

Godot 城市模拟 – 005 OpenStreetMap 介绍:数据结构与详细示例

**摘要:OpenStreetMap(OSM)是一个开源协作奔驰地图的全球地图项目,采用社区编辑模式Tube数据自由共享。其核心数据结构包括节点(Node)、路径(Way)和关系-关系(Relation),通过标签(Tag)描述属性。节点代表坐标点,路径由节点序列组成线或面,关系则关联多个元素表达复杂地理实体。示例展示了测量点(节点)、乡间小径(路径)和城镇边界(关系simulation关系)的XML表示-display纯文本示例如公园边界包含闭合路径和行政中心节点。OSM的轻量级数据模型支持ising开放

mmx_2022的博客 1319

856. 括号的分数

问题描述 给定一个平衡括号字符串 S,按下述规则计算该字符串的分数: () 得 1 分。 AB 得 A + B 分,其中 A 和 B 是平衡括号字符串。 (A) 得 2 * A 分,其中 A 是平衡括号字符串。 示例 示例 1: 输入: “()” 输出: 1 示例 2: 输入: “(())” 输出: 2 示例 3: 输入: “()()” 输出: 2 示例 4: 输入: “(()(()))” 输出: 6 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/

qq_24997277的博客 393

无人机精准降落辅助系统核心技术解析

接近地面时(<10米)切换至基于图像的视觉伺服(IBVS),依据图像特征点偏移(如靶标图案、LED标记)微调姿态,消除位置累积误差。通过SRUKF(平方根无迹卡尔曼滤波) 算法融合三类数据,输出6自由度位姿估计(精度达厘米级),抑制单一传感器噪声。权值根据信噪比动态调整。模型预测控制(MPC):针对斜坡降落,构建包含平台倾角、风扰的动力学方程,滚动求解最优油门序列。动态照明适配:针对夜间或低光照场景,系统向降落平台发送亮度调节指令,如增强红外信标强度或调整可见光LED阵列,确保特征识别鲁棒性。

YUNZHUO666的博客 1695

Simscape Multiboby学习笔记1——跟着官网学Multibody

文章目录一. 引言二. Simscape Multibody自学之路三. 本教程的目录 一. 引言 最近在倒腾Matlab的动力学仿真,起因是看到有人推荐Matlab的multbody模块,一经了解之下简直惊为天人。作为一名Matlab的小粉,看到这么好用的模块简直不要太开心,之前用simulink搭飞行器的仿真模型,虽然能够仿真看到六自由度位移,毕竟不能可视化,还是很不够直观,而且simulink仿真(以及更费力的脚本文件仿真)需要精确建模,模型不精确计算也是天差地别。而Multibody在具备其他动力学

qq_30267617的博客 8241

Leetcode - 352周赛详解

leetcode - 352周赛详解

m0_74859835的博客 574

Cadence公司的数字IC设计工具:综合工具(Genus)——(2)

介绍Cadence公司的数字IC设计工具Genus

qq_42922513的博客 1943

Leetcode周赛

Leetcode周赛一、???? 第 281 场力扣周赛 一、???? 第 281 场力扣周赛 第 281 场力扣周赛 6012. 统计各位数字之和为偶数的整数个数 第一步:编写一个将数字千分位、百分位、十分位数字相加的函数 第二步:使用for循环遍历从1~num的数字,如果数字和为偶数,count++,最后return count. 注:c++中/是求商,%是求余,比如数985,商为98,余数为5,依次… class Solution { public: int countEven(int n

weixin_47156261的博客 1013

Win11内核隔离无法打开的解决方案详解

内核隔离问题的解决需遵循"先硬件后软件"的排查原则,90%以上的案例可通过驱动清理或外设断开解决。对于必须禁用该功能的用户,建议定期使用Windows Defender进行全盘扫描,并保持系统更新至最新版本。技术决策需在安全性和兼容性之间取得平衡,本文提供的多维解决方案可帮助用户构建更稳定的Windows 11使用环境。

mmoo_python的博客 4825

【硬刚Hadoop】HADOOP MAPREDUCE(1):概述

本文是对《【硬刚大数据之学习路线篇】从零到大数据专家的学习指南(全面升级版)》的Hadoop部分补充。 1 MapReduce定义 MapReduce是一个分布式运算程序的编程框架,是用户开发“基于Hadoop的数据分析应用”的核心框架。 MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。 2MapReduce优缺点 2.1 优点 1)MapReduce易于编程 它简单的实现一些接口,就可以完成一个分布式程序..

微信搜:import_bigdata,大数据领域硬核原创作者 462

LeetCode刷题(90)~圆形赛道上经过次数最多的扇区【第203场周赛:题目一】

题目描述 给你一个整数 n 和一个整数数组 rounds 。有一条圆形赛道由 n 个扇区组成,扇区编号从 1 到 n 。现将在这条赛道上举办一场马拉松比赛,该马拉松全程由 m 个阶段组成。其中,第 i 个阶段将会从扇区 rounds[i - 1] 开始,到扇区 rounds[i] 结束。举例来说,第 1 阶段从 rounds[0] 开始,到 rounds[1] 结束。 请你以数组形式返回经过次数最多的那几个扇区,按扇区编号 升序 排列。 注意,赛道按扇区编号升序逆时针形成一个圆(请参见第一个示例)。 示例

海到无边天作岸 山登绝顶我为峰 2179

基于ESP32的室内空气质量检测系统开发

随着环境污染问题的日益严重,室内空气质量的监测变得越来越重要。室内空气质量的好坏直接影响到人们的健康,尤其是对于在封闭空间长时间待着的人群。为此,基于ESP32的室内空气质量检测系统应运而生。ESP32作为一款集成了Wi-Fi和蓝牙的高性能微控制器,为嵌入式开发提供了良好的平台,适用于构建各种智能硬件设备。本博客将详细介绍如何基于ESP32开发一个室内空气质量检测系统。系统可以实时监测空气中的温度、湿度、二氧化碳浓度、甲醛浓度等指标,并通过Wi-Fi将数据传输到云端或移动设备,方便用户随时查看空气质量情况。

2201_76125393的博客 829

LeetCode之Weekly Contest 90

LeetCode第90场周赛记录 第一题:亲密字符串 问题: 给定两个由小写字母构成的字符串A和B,只要我们可以通过交换A中的两个字母得到与B相等的结果,就返回true;否则返回false。 示例 1: 输入: A = "ab", B = "ba" 输出: true 示例 2: 输入: A = "ab", B = "ab" 输出: false 示...

weixin_30780221的博客 154

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

leetcode 第 277 场周赛

leetcode 第 277 场周赛

qq_45353823的博客 745

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Leetcode 第136场周赛解题报告

Leetcode 第136场周赛解题报告 周日的比赛的时候正在外面办事,没有参加。赛后看了下题目,几道题除了表面要考的内容,还是有些能发散扩展的地方。 做题目不是最终目的,通过做题发现知识盲区,去研究学习,才能不断提高。 理论和实际是有关系的,一些题目也都有现实意义。计算机的一些模拟操作,通过数学算法,能够大大减轻代码量和算法复杂度。 第一题是机器...

架构学而思 189

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

LeetCode第215场周赛20201115(Java)

第 215 场周赛 20201115 1656. 设计有序流 题目描述1 有 n 个 (id, value) 对,其中 id 是 1 到 n 之间的一个整数,value 是一个字符串。不存在 id 相同的两个 (id, value) 对。 设计一个流,以 任意 顺序获取 n 个 (id, value) 对,并在多次调用时 按 id 递增的顺序 返回一些值。 实现 OrderedStream 类: OrderedStream(int n) 构造一个能接收 n 个值的流,并将当前指针 ptr 设为 1 。 St

shinezzz的博客 464

Leetcode 第320场周赛

Leetcode 第320场周赛

qq_35089484的博客 928

LeetCode 第 244 场周赛题解

这是 2021-06-06 的一场 LeetCode 周赛,本场周赛的题目相较而以往而言比较简单,基本上想到点上就可以做出来,主要涉及到矩阵的旋转、贪心、滑动窗口、前缀和、二分查找等知识点。

Veggie的博客 863

Leetcode第 217 场周赛(思维量比较大)

Leetcode第 217 场周赛 比赛链接:点这里 做完前两题我就知道今天的竞赛我已经结束了 这场比赛思维量还是比较大的。 1673. 找出最具竞争力的子序列 题目 给你一个整数数组 nums 和一个正整数 k ,返回长度为 k 且最具 竞争力 的 nums 子序列。 数组的子序列是从数组中删除一些元素(可能不删除元素)得到的序列。 在子序列 a 和子序列 b 第一个不相同的位置上,如果 a 中的数字小于 b 中对应的数字,那么我们称子序列 a 比子序列 b(相同长度下)更具 竞争力 。 例如,[1,3,

qq_40872103的博客 1177

leetcode每周周赛第277场周赛 排序理解+双指针数组+哈希表映射 简单与中等 简单周赛你不来试试么~

本篇内容:leetcode每周周赛第277场周赛 排序理解+双指针数组+哈希表映射 简单与中等 文章专栏:leetcode周赛打卡《周周打卡》 最近更新:2022年1月16日 leetcode每周.周赛第277场周赛 个人简介:一只二本院校在读的大三程序猿,本着注重基础,打卡算法,分享技术作为个人的经验总结性的博文博主,虽然可能有时会犯懒,但是还是会坚持下去的,如果你很喜欢博文的话,建议看下面一行~(疯狂暗示QwQ) 点赞 收藏 ⭐留言

Alascanfu的博客 529

[算法]LeetCode第193场周赛202006014

第193场周赛 20200614 1480. 一维数组的动态和 难度:简单 题目描述1 给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i])。 请返回 nums的动态和。 示例 1: 输入:nums = [1,2,3,4] 输出:[1,3,6,10] 解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。 示例 2: 输入:nums = [1,1,1,1,1] 输出:[1,2,3,4,5] 解释:动态和计算过程

shinezzz的博客 312

【LeetCode周赛】LeetCode第358场周赛

这道题主要考察的是对链表的操作,既然要对链表翻倍,那么我们一定要考虑到进位如何表示,可以先将链表进行翻转,翻转之后对链表的各个数字进行翻倍的操作会变得简单一些。输入:nums = [51,71,17,24,42] 输出:88 解释: i = 1 和 j = 2 ,nums[i] 和 nums[j]可以知道数据范围并不大,因此我们可以直接暴力枚举整数数组nums中的两个数,判断这两个数数位上最大的数字是否相等。输出:0 解释:我们选择 nums[0] = 4 和 nums[3] = 4。

a碟的博客 408

leetcode——第244场周赛—1

原题链接 给你两个大小为 NNN x NNN 的二进制矩阵 mat 和 target 。现 以 90 度顺时针轮转 矩阵 mat 中的元素 若干次 ,如果能够使 mat 与 target 一致,返回 true ;否则,返回 false 。 示例 1: 输入:mat = [[0,1],[1,0]], target = [[1,0],[0,1]] 输出:true 解释:顺时针轮转 90 度一次可以使 mat 和 target 一致。 示例 2: 输入:mat = [[0,1],[1,1]], target

qq_45496907的博客 199

LeetCode题解目录

最新更新于2020.07.10. 前往LeetCode主页。 前往GitHub源码。 已解决 105/1706 - 简单 100 中等 5 困难 0 2020.06.30 - 2020.07.09,AC + 100道(耗时10天) 已解题目 LeetCode 1. 两数之和 LeetCode 2. 两数相加 LeetCode 3. 无重复字符的最长子串 LeetCode 7. 整数反转 Le

HarvestWu的博客 1371

【LeetCode周赛】LeetCode第362场周赛

那么我们可以先存储所有石头多的位置和0石头的位置,对0石头的位置进行全排列,然后依次计算从石头多的位置移动到0石头的位置需要多少步,维护一个最小值即可。解释:从单元格 (3, 1)开始出发,穿过上图标注的单元格,至少需要 4 秒后到达单元格 (7, 3)。解释:从单元格 (2, 4)开始出发,穿过上图标注的单元格,可以在恰好 6 秒后到达单元格 (7, 7)。输入:grid = [[1,1,0],[1,1,1],[1,2,1]]输入:grid = [[1,3,0],[1,0,0],[1,0,3]]

a碟的博客 364
上一篇: leetcode周赛python题解
下一篇: LeetCode 第91场周赛
流左沙
博客等级 码龄11年 46粉丝 55原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值