首页 > 其他分享 >2024年6月刷题记录

2024年6月刷题记录

时间:2024-08-01 21:06:56浏览次数:12  
标签:题意 记录 nums 2024 数组 字符串 leetcode 刷题

2024年6月1日

【leetcode】2928. 给小朋友们分糖果 I

题意:

给你两个正整数 nlimit

请你将 n 颗糖果分给 3 位小朋友,确保没有任何小朋友得到超过 limit 颗糖果,请你返回满足此条件下的 总方案数




2024年6月2日

【leetcode】575. 分糖果

题意:

Alice 有 n 枚糖,其中第 i 枚糖的类型为 candyType[i] 。Alice 注意到她的体重正在增长,所以前去拜访了一位医生。

医生建议 Alice 要少摄入糖分,只吃掉她所有糖的 n / 2 即可(n 是一个偶数)。Alice 非常喜欢这些糖,她想要在遵循医生建议的情况下,尽可能吃到最多不同种类的糖。

给你一个长度为 n 的整数数组 candyType ,返回: Alice 在仅吃掉 n / 2 枚糖的情况下,可以吃到糖的 最多 种类数




2024年6月3日

【leetcode】1103. 分糖果 II

题意:

排排坐,分糖果。

我们买了一些糖果 candies,打算把它们分给排好队的 n = num_people 个小朋友。

给第一个小朋友 1 颗糖果,第二个小朋友 2 颗,依此类推,直到给最后一个小朋友 n 颗糖果。

然后,我们再回到队伍的起点,给第一个小朋友 n + 1 颗糖果,第二个小朋友 n + 2 颗,依此类推,直到给最后一个小朋友 2 * n 颗糖果。

重复上述过程(每次都比上一次多给出一颗糖果,当到达队伍终点后再次从队伍起点开始),直到我们分完所有的糖果。注意,就算我们手中的剩下糖果数不够(不比前一次发出的糖果多),这些糖果也会全部发给当前的小朋友。

返回一个长度为 num_people、元素之和为 candies 的数组,以表示糖果的最终分发情况(即 ans[i] 表示第 i 个小朋友分到的糖果数)。




2024年6月4日

【leetcode】3067. 在带权树网络中统计可连接服务器对数目

题意:

给你一棵无根带权树,树中总共有 n 个节点,分别表示 n 个服务器,服务器从 0n - 1 编号。同时给你一个数组 edges ,其中 edges[i] = [ai, bi, weighti] 表示节点 aibi 之间有一条双向边,边的权值为 weighti 。再给你一个整数 signalSpeed

如果两个服务器 abc 满足以下条件,那么我们称服务器 ab 是通过服务器 c 可连接的

  • a < ba != cb != c
  • ca 的距离是可以被 signalSpeed 整除的。
  • cb 的距离是可以被 signalSpeed 整除的。
  • cb 的路径与从 ca 的路径没有任何公共边。

请你返回一个长度为 n 的整数数组 count ,其中 count[i] 表示通过服务器 i 可连接 的服务器对的 数目




2024年6月5日

【leetcode】169. 多数元素

题意:

给定一个大小为 n 的数组 nums ,返回其中的多数元素。多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。

你可以假设数组是非空的,并且给定的数组总是存在多数元素。




2024年6月6日

【leetcode】2938. 区分黑球与白球

题意:

桌子上有 n 个球,每个球的颜色不是黑色,就是白色。

给你一个长度为 n 、下标从 0 开始的二进制字符串 s,其中 10 分别代表黑色和白色的球。

在每一步中,你可以选择两个相邻的球并交换它们。

返回「将所有黑色球都移到右侧,所有白色球都移到左侧所需的 最小步数」。




2024年6月7日

【leetcode】3038. 相同分数的最大操作数目 I

题意:

给你一个整数数组 nums ,如果 nums 至少 包含 2 个元素,你可以执行以下操作:

  • 选择 nums 中的前两个元素并将它们删除。

一次操作的 分数 是被删除元素的和。

在确保 所有操作分数相同 的前提下,请你求出 最多 能进行多少次操作。

请你返回按照上述要求 最多 可以进行的操作次数。




2024年6月8日

【leetcode】3040. 相同分数的最大操作数目 II

题意:

给你一个整数数组 nums ,如果 nums 至少 包含 2 个元素,你可以执行以下操作中的 任意 一个:

  • 选择 nums 中最前面两个元素并且删除它们。
  • 选择 nums 中最后两个元素并且删除它们。
  • 选择 nums 中第一个和最后一个元素并且删除它们。

一次操作的 分数 是被删除元素的和。

在确保 所有操作分数相同 的前提下,请你求出 最多 能进行多少次操作。

请你返回按照上述要求 最多 可以进行的操作次数。




2024年6月9日

【leetcode】312. 戳气球

题意:

n 个气球,编号为0n - 1,每个气球上都标有一个数字,这些数字存在数组 nums 中。

现在要求你戳破所有的气球。戳破第 i 个气球,你可以获得 nums[i - 1] * nums[i] * nums[i + 1] 枚硬币。 这里的 i - 1i + 1 代表和 i 相邻的两个气球的序号。如果 i - 1i + 1 超出了数组的边界,那么就当它是一个数字为 1 的气球。

求所能获得硬币的最大数量。




2024年6月10日

【leetcode】881. 救生艇

题意:

给定数组 peoplepeople[i]表示第 i 个人的体重 ,船的数量不限,每艘船可以承载的最大重量为 limit

每艘船最多可同时载两人,但条件是这些人的重量之和最多为 limit

返回 承载所有人所需的最小船数




2024年6月11日

【leetcode】419. 甲板上的战舰

题意:

给你一个大小为 m x n 的矩阵 board 表示甲板,其中,每个单元格可以是一艘战舰 'X' 或者是一个空位 '.' ,返回在甲板 board 上放置的 战舰 的数量。

战舰 只能水平或者垂直放置在 board 上。换句话说,战舰只能按 1 x k1 行,k 列)或 k x 1k 行,1 列)的形状建造,其中 k 可以是任意大小。两艘战舰之间至少有一个水平或垂直的空位分隔 (即没有相邻的战舰)。




2024年6月12日

【leetcode】2806. 取整购买后的账户余额

题意:

一开始,你的银行账户里有 100 块钱。

给你一个整数purchaseAmount ,它表示你在一次购买中愿意支出的金额。

在一个商店里,你进行一次购买,实际支出的金额会向 最近10倍数 取整。换句话说,你实际会支付一个 非负 金额 roundedAmount ,满足 roundedAmount10 的倍数且 abs(roundedAmount - purchaseAmount) 的值 最小

如果存在多于一个最接近的 10 的倍数,较大的倍数 是你的实际支出金额。

请你返回一个整数,表示你在愿意支出金额为 purchaseAmount 块钱的前提下,购买之后剩下的余额。

注意: 0 也是 10 的倍数。




2024年6月13日

【leetcode】189. 轮转数组

题意:

给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。




2024年6月14日

【leetcode】2786. 访问数组中的位置使分数最大

题意:

给你一个下标从 0 开始的整数数组 nums 和一个正整数 x

一开始 在数组的位置 0 处,你可以按照下述规则访问数组中的其他位置:

  • 如果你当前在位置 i ,那么你可以移动到满足 i < j任意 位置 j
  • 对于你访问的位置 i ,你可以获得分数 nums[i]
  • 如果你从位置 i 移动到位置 jnums[i]nums[j]奇偶性 不同,那么你将失去分数 x

请你返回你能得到的 最大 得分之和。

注意 ,你一开始的分数为 nums[0]




2024年6月15日

【leetcode】2779. 数组的最大美丽值

题意:

给你一个下标从 0 开始的整数数组 nums 和一个 非负 整数 k

在一步操作中,你可以执行下述指令:

  • 在范围 [0, nums.length - 1] 中选择一个 此前没有选过 的下标 i
  • nums[i] 替换为范围 [nums[i] - k, nums[i] + k] 内的任一整数。

数组的 美丽值 定义为数组中由相等元素组成的最长子序列的长度。

对数组 nums 执行上述操作任意次后,返回数组可能取得的 最大 美丽值。

注意: 能对每个下标执行 一次 此操作。

数组的 子序列 定义是:经由原数组删除一些元素(也可能不删除)得到的一个新数组,且在此过程中剩余元素的顺序不发生改变。




2024年6月16日

【leetcode】521. 最长特殊序列 Ⅰ

题意:

给你两个字符串 ab,请返回 这两个字符串中 最长的特殊序列 的长度。如果不存在,则返回 -1

「最长特殊序列」 定义如下:该序列为 某字符串独有的最长子序列(即不能是其他字符串的子序列)

字符串 s 的子序列是在从 s 中删除任意数量的字符后可以获得的字符串。

  • 例如,"abc""aebdc" 的子序列,因为删除 "a***e***b***d\***c" 中斜体加粗的字符可以得到 "abc""aebdc" 的子序列还包括 "aebdc""aeb""" (空字符串)。



2024年6月17日

【leetcode】522. 最长特殊序列 II

题意:

给定字符串列表 strs ,返回其中 最长的特殊序列 的长度。如果最长特殊序列不存在,返回 -1

特殊序列 定义如下:该序列为某字符串 独有的子序列(即不能是其他字符串的子序列)

s子序列可以通过删去字符串 s 中的某些字符实现。

  • 例如,"abc""aebdc" 的子序列,因为您可以删除"aebdc"中的下划线字符来得到 "abc""aebdc"的子序列还包括"aebdc""aeb" 和 "" (空字符串)。



2024年6月18日

【leetcode】2288. 价格减免

题意:

句子 是由若干个单词组成的字符串,单词之间用单个空格分隔,其中每个单词可以包含数字、小写字母、和美元符号 '$' 。如果单词的形式为美元符号后跟着一个非负实数,那么这个单词就表示一个 价格

  • 例如 "$100""$23""$6" 表示价格,而 "100""$""$1e5 不是。

给你一个字符串 sentence 表示一个句子和一个整数 discount 。对于每个表示价格的单词,都在价格的基础上减免 discount% ,并 更新 该单词到句子中。所有更新后的价格应该表示为一个 恰好保留小数点后两位 的数字。

返回表示修改后句子的字符串。

注意:所有价格 最多10 位数字。




2024年6月19日

【leetcode】121. 买卖股票的最佳时机

题意:

给定一个数组 prices ,它的第 i 个元素 prices[i] 表示一支给定股票第 i 天的价格。

你只能选择 某一天 买入这只股票,并选择在 未来的某一个不同的日子 卖出该股票。设计一个算法来计算你所能获取的最大利润。

返回你可以从这笔交易中获取的最大利润。如果你不能获取任何利润,返回 0




2024年6月20日

【leetcode】2748. 美丽下标对的数目

题意:

给你一个下标从 0 开始的整数数组 nums 。如果下标对 ij 满足 0 ≤ i < j < nums.length ,如果 nums[i]第一个数字nums[j]最后一个数字 互质 ,则认为 nums[i]nums[j] 是一组 美丽下标对

返回 nums美丽下标对 的总数目。

对于两个整数 xy ,如果不存在大于 1 的整数可以整除它们,则认为 xy 互质 。换而言之,如果 gcd(x, y) == 1 ,则认为 xy 互质,其中 gcd(x, y)xy最大公因数




2024年6月21日

【leetcode】LCP 61. 气温变化趋势

题意:

力扣城计划在两地设立「力扣嘉年华」的分会场,气象小组正在分析两地区的气温变化趋势,对于第 i ~ (i+1) 天的气温变化趋势,将根据以下规则判断:

  • 若第 i+1 天的气温 高于i 天,为 上升 趋势
  • 若第 i+1 天的气温 等于i 天,为 平稳 趋势
  • 若第 i+1 天的气温 低于i 天,为 下降 趋势

已知 temperatureA[i]temperatureB[i] 分别表示第 i 天两地区的气温。 组委会希望找到一段天数尽可能多,且两地气温变化趋势相同的时间举办嘉年华活动。请分析并返回两地气温变化趋势相同的最大连续天数

即最大的 n,使得第 i~i+n 天之间,两地气温变化趋势相同




2024年6月22日

【leetcode】125. 验证回文串

题意:

如果在将所有大写字符转换为小写字符、并移除所有非字母数字字符之后,短语正着读和反着读都一样。则可以认为该短语是一个 回文串

字母和数字都属于字母数字字符。

给你一个字符串 s,如果它是 回文串 ,返回 true ;否则,返回 false




2024年6月23日

【leetcode】520. 检测大写字母

题意:

我们定义,在以下情况时,单词的大写用法是正确的:

  • 全部字母都是大写,比如 "USA"
  • 单词中所有字母都不是大写,比如 "leetcode"
  • 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"

给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false




2024年6月24日

【leetcode】503. 下一个更大元素 II

题意:

给定一个循环数组 numsnums[nums.length - 1] 的下一个元素是 nums[0] ),返回 nums 中每个元素的 下一个更大元素

数字 x下一个更大的元素 是按数组遍历顺序,这个数字之后的第一个比它更大的数,这意味着你应该循环地搜索它的下一个更大的数。如果不存在,则输出 -1




2024年6月25日

【leetcode】383. 赎金信

题意:

给你两个字符串:ransomNotemagazine ,判断 ransomNote 能不能由 magazine 里面的字符构成。

如果可以,返回 true ;否则返回 false

magazine 中的每个字符只能在 ransomNote 中使用一次。




2024年6月26日

【leetcode】9. 回文数

题意:

给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false

回文数 是指正序(从左向右)和倒序(从右向左)读都是一样的整数。

  • 例如,121 是回文,而 123 不是。



2024年6月27日

【leetcode】2734. 执行子串操作后的字典序最小字符串

题意:

给你一个仅由小写英文字母组成的字符串 s 。在一步操作中,你可以完成以下行为:

  • 选择 s 的任一非空子字符串,可能是整个字符串,接着将字符串中的每一个字符替换为英文字母表中的前一个字符。例如,'b' 用 'a' 替换,'a' 用 'z' 替换。

返回执行上述操作 恰好一次 后可以获得的 字典序最小 的字符串。

子字符串 是字符串中的一个连续字符序列。

现有长度相同的两个字符串 x 和 字符串 y ,在满足 x[i] != y[i] 的第一个位置 i 上,如果 x[i] 在字母表中先于 y[i] 出现,则认为字符串 x 比字符串 y 字典序更小




2024年6月28日

【leetcode】2742. 给墙壁刷油漆

题意:

给你两个长度为 n 下标从 0 开始的整数数组 costtime ,分别表示给 n 堵不同的墙刷油漆需要的开销和时间。你有两名油漆匠:

  • 一位需要 付费 的油漆匠,刷第 i 堵墙需要花费 time[i] 单位的时间,开销为 cost[i] 单位的钱。
  • 一位 免费 的油漆匠,刷 任意 一堵墙的时间为 1 单位,开销为 0 。但是必须在付费油漆匠 工作 时,免费油漆匠才会工作。

请你返回刷完 n 堵墙最少开销为多少。




2024年6月29日

【leetcode】2710. 移除字符串中的尾随零

题意:

给你一个用字符串表示的正整数 num ,请你以字符串形式返回不含尾随零的整数 num




标签:题意,记录,nums,2024,数组,字符串,leetcode,刷题
From: https://www.cnblogs.com/jiamian/p/18337524

相关文章

  • 2024年5月刷题记录
    2024年5月1日【leetcode】2462.雇佣K位工人的总代价题意:给你一个下标从0开始的整数数组costs,其中costs[i]是雇佣第i位工人的代价。同时给你两个整数k和candidates。我们想根据以下规则恰好雇佣k位工人:总共进行k轮雇佣,且每一轮恰好雇佣一位工人。在每一......
  • Apifox 7月更新|SAML 单点登录、迭代分支优化、Markdown 历史记录、搜索能力提升
      1新增「组织」架构引入了全新的「组织」概念,提供更灵活的管理结构。企业可以创建「组织」,并在组织内设立多个「团队」,便于大中型企业能够更有效地组织和管理其项目及人员。通过这种方式,企业可以根据自身的组织结构和业务需求,灵活地分配资源和权限,提高整体的协作效率......
  • 2024杭电多校2
    2024杭电多校2打的比较迷的一场,6,7,10签到,队友把11字符串写了,之后队友把字符串过来,全队就被1题鸡爪构造卡住了,队友继续取开构造我就随便开了,3题魔方玩过一段时间一眼看出结论后,变量名写反wa了一发,改过来之后没多久队友构造也过了,队友去开12,结果构造出一组hack样例,发现题比想象中难......
  • 8月记录
    237.Hitori的字符串(string)AC自动机上随机游走问题,但是叶子\(\le100\)个,有环。考虑设元然后高斯消元,但对每个点设显然不优,考虑一种链剖分,对链顶设元。然后按照bfs序(trie树上的)维护每个点期望的表示(用元表示)。如果\(tr_{x,i}\)是返祖边,显然深度比\(x\)小,一定被表......
  • 2024牛客暑期多校训练营6 A.cake(题解)
    A.Cake题意两个人玩游戏,游戏分两阶段第一阶段在一棵有根树上轮流走,走到叶子停止,有根树边上有01标记,记录下走过的01串第二阶段分蛋糕,Oscar按自己的意愿切蛋糕,然后按照第一阶段获得的01串顺序依次拿蛋糕(1代表Grammy拿,0代表Oscar拿)两人都想让自己获得尽量多的蛋糕,......
  • 河南萌新联赛2024第(三)场:河南大学
    Circle画出4个圈的交叉所以就是124814,从第二个数开始,每个+2,+4,+6,....以此类推。voidsolve(){inta[1000005]={0};a[0]=1;a[1]=2;for(inti=2;i<1000005;i++){a[i]=a[i-1]+2*(i-1);}intn;cin>>n;while(n--)......
  • 2024牛客暑期多校训练营6
    Preface警钟长鸣,经典一个变量拿来跑两次循环然后挂了看不出来,主要这种睿智错误只有像我这种把循环变量声明在开头的人才会犯当时看了半天没看出来红温了,还把队友都摇过来看,然后三个人全红温了直到最后瞎JBassert了半天才发现这个问题,然后罚时爆炸,会的题也没时间写了,直接掉大......
  • opensuse-镜像源记录
    参考文献:https://opensuse-guide.ustclug.org/index.phpventoy安装之前有个小坑,要用systemed打开,安装成功是grub21.随着linux这个坑的逐渐深入,kubuntu->debain->archlinux+kde->(...fedora...manjaro...gruada...enduraos...)->archlinux->opensuse也许opensuse能够祝我脱坑,i......
  • 奇怪数学题 (更新至 20240801)
    1\[\color{#40865d}(2)\]\(f(x)=x^{2}-a(x+a\lnx)(a\neq0)\),若\(f(1)+f'(1)=0\)且\(a\gt0\),问可以得到什么最值相关的不等式结论\[\texttt{Sol.}\]\[f(x)=x^{2}-ax-a^{2}\lnx\]\[f'(x)=2x-a-\frac{a^{2}}{x}\]\[2-a-a^{2}+1-a=0\]解得\(a_{1}=1,......
  • 杭电多校 2024 游记
    前言和ppip还有b6e0_组的队,team102。2024-07-19Round1自己过了2,8,12,5。2024-07-22Round2自己过了8,3,2。2024-07-26Round3自己过了8,11,12,5。2024-07-29Round4自己过了5,4,7。......