首页 > 其他分享 >2022年12月刷题记录

2022年12月刷题记录

时间:2023-01-03 21:59:57浏览次数:65  
标签:12 cn problems 2022 https 字符串 刷题

2022年12月1日

leetcode1779. 找到最近的有相同 X 或 Y 坐标的点

链接地址:https://leetcode.cn/problems/find-nearest-point-that-has-the-same-x-or-y-coordinate/

题意:

给你两个整数 xy ,表示你在一个笛卡尔坐标系下的 (x, y) 处。同时,在同一个坐标系下给你一个数组 points ,其中 points[i] = [ai, bi] 表示在 (ai, bi) 处有一个点。当一个点与你所在的位置有相同的 x 坐标或者相同的 y 坐标时,我们称这个点是 有效的

请返回距离你当前位置 曼哈顿距离 最近的 有效 点的下标(下标从 0 开始)。如果有多个最近的有效点,请返回下标 最小 的一个。如果没有有效点,请返回 -1

两个点 (x1, y1)(x2, y2) 之间的 曼哈顿距离abs(x1 - x2) + abs(y1 - y2)




2022年12月2日

leetcode1769. 移动所有球到每个盒子所需的最小操作数

链接地址:https://leetcode.cn/problems/minimum-number-of-operations-to-move-all-balls-to-each-box/

题意:

n 个盒子。给你一个长度为 n 的二进制字符串 boxes ,其中 boxes[i] 的值为 '0' 表示第 i 个盒子是 的,而 boxes[i] 的值为 '1' 表示盒子里有 一个 小球。

在一步操作中,你可以将 一个 小球从某个盒子移动到一个与之相邻的盒子中。第 i 个盒子和第 j 个盒子相邻需满足 abs(i - j) == 1 。注意,操作执行后,某些盒子中可能会存在不止一个小球。

返回一个长度为 n 的数组 answer ,其中 answer[i] 是将所有小球移动到第 i 个盒子所需的 最小 操作数。

每个 answer[i] 都需要根据盒子的 初始状态 进行计算。




2022年12月3日

leetcode1796. 字符串中第二大的数字

链接地址:https://leetcode.cn/problems/second-largest-digit-in-a-string/

题意:

给你一个混合字符串 s ,请你返回 s第二大 的数字,如果不存在第二大的数字,请你返回 -1

混合字符串 由小写英文字母和数字组成。




2022年12月4日

leetcode1774. 最接近目标价格的甜点成本

链接地址:https://leetcode.cn/problems/closest-dessert-cost/

题意:

你打算做甜点,现在需要购买配料。目前共有 n 种冰激凌基料和 m 种配料可供选购。而制作甜点需要遵循以下几条规则:

  • 必须选择 一种 冰激凌基料。
  • 可以添加 一种或多种 配料,也可以不添加任何配料。
  • 每种类型的配料 最多两份

给你以下三个输入:

  • baseCosts ,一个长度为 n 的整数数组,其中每个 baseCosts[i] 表示第 i 种冰激凌基料的价格。
  • toppingCosts,一个长度为 m 的整数数组,其中每个 toppingCosts[i] 表示 一份i 种冰激凌配料的价格。
  • target ,一个整数,表示你制作甜点的目标价格。

你希望自己做的甜点总成本尽可能接近目标价格 target

返回最接近 target 的甜点成本。如果有多种方案,返回 成本相对较低 的一种。




2022年12月5日

leetcode11. 盛最多水的容器

链接地址:https://leetcode.cn/problems/container-with-most-water/

题意:

给定一个长度为 n 的整数数组 height 。有 n 条垂线,第 i 条线的两个端点是 (i, 0)(i, height[i])

找出其中的两条线,使得它们与 x 轴共同构成的容器可以容纳最多的水。

返回容器可以储存的最大水量。

说明:你不能倾斜容器。




2022年12月6日

leetcode1805. 字符串中不同整数的数目

链接地址:https://leetcode.cn/problems/number-of-different-integers-in-a-string/

题意:

给你一个字符串 word ,该字符串由数字和小写英文字母组成。

请你用空格替换每个不是数字的字符。例如,"a123bc34d8ef34" 将会变成 " 123 34 8 34" 。注意,剩下的这些整数为(相邻彼此至少有一个空格隔开):"123""34""8""34"

返回对 word 完成替换后形成的 不同 整数的数目。

只有当两个整数的 不含前导零 的十进制表示不同, 才认为这两个整数也不同。




2022年12月7日

leetcode1775. 通过最少操作次数使数组的和相等

链接地址:https://leetcode.cn/problems/equal-sum-arrays-with-minimum-number-of-operations/

题意:

给你两个长度可能不等的整数数组 nums1nums2 。两个数组中的所有值都在 16 之间(包含 16)。

每次操作中,你可以选择 任意 数组中的任意一个整数,将它变成 16 之间 任意 的值(包含 16)。

请你返回使 nums1 中所有数的和与 nums2 中所有数的和相等的最少操作次数。如果无法使两个数组的和相等,请返回 -1




2022年12月8日

leetcode1812. 判断国际象棋棋盘中一个格子的颜色

链接地址:https://leetcode.cn/problems/determine-color-of-a-chessboard-square/

题意:

给你一个坐标 coordinates ,它是一个字符串,表示国际象棋棋盘中一个格子的坐标。

如果所给格子的颜色是白色,请你返回 true,如果是黑色,请返回 false

给定坐标一定代表国际象棋棋盘上一个存在的格子。坐标第一个字符是字母,第二个字符是数字。




2022年12月9日

leetcode1780. 判断一个数字是否可以表示成三的幂的和

链接地址:https://leetcode.cn/problems/check-if-number-is-a-sum-of-powers-of-three/

题意:

给你一个整数 n ,如果你可以将 n 表示成若干个不同的三的幂之和,请你返回 true ,否则请返回 false

对于一个整数 y ,如果存在整数 x 满足 y == 3x ,我们称这个整数 y 是三的幂。




2022年12月10日

leetcode1691. 堆叠长方体的最大高度

链接地址:https://leetcode.cn/problems/maximum-height-by-stacking-cuboids/

题意:

给你 n 个长方体 cuboids ,其中第 i 个长方体的长宽高表示为 cuboids[i] = [widthi, lengthi, heighti]下标从 0 开始)。请你从 cuboids 选出一个 子集 ,并将它们堆叠起来。

如果 widthi <= widthjlengthi <= lengthjheighti <= heightj ,你就可以将长方体 i 堆叠在长方体 j 上。你可以通过旋转把长方体的长宽高重新排列,以将它放在另一个长方体上。

返回 堆叠长方体 cuboids 可以得到的 最大高度

解题思路:

https://leetcode.cn/problems/maximum-height-by-stacking-cuboids/solutions/2014514/tu-jie-suan-fa-you-hua-xiang-xi-zheng-mi-b6fq/

https://leetcode.cn/problems/maximum-height-by-stacking-cuboids/solutions/2013994/dui-die-chang-fang-ti-de-zui-da-gao-du-b-17qg/




2022年12月11日

leetcode1827. 最少操作使数组递增

链接地址:https://leetcode.cn/problems/minimum-operations-to-make-the-array-increasing/

题意:

给你一个整数数组 nums下标从 0 开始)。每一次操作中,你可以选择数组中一个元素,并将它增加 1

  • 比方说,如果 nums = [1,2,3] ,你可以选择增加 nums[1] 得到 nums = [1,**3**,3]

请你返回使 nums 严格递增最少 操作次数。

我们称数组 nums严格递增的 ,当它满足对于所有的 0 <= i < nums.length - 1 都有 nums[i] < nums[i+1] 。一个长度为 1 的数组是严格递增的一种特殊情况。




2022年12月12日

leetcode1781. 所有子字符串美丽值之和

链接地址:https://leetcode.cn/problems/sum-of-beauty-of-all-substrings/

题意:

一个字符串的 美丽值 定义为:出现频率最高字符与出现频率最低字符的出现次数之差。

  • 比方说,"abaacc" 的美丽值为 3 - 1 = 2

给你一个字符串 s ,请你返回它所有子字符串的 美丽值 之和。




2022年12月13日

leetcode1832. 判断句子是否为全字母句

链接地址:https://leetcode.cn/problems/check-if-the-sentence-is-pangram/

题意:

全字母句 指包含英语字母表中每个字母至少一次的句子。

给你一个仅由小写英文字母组成的字符串 sentence ,请你判断 sentence 是否为 全字母句

如果是,返回 true ;否则,返回 false




2022年12月14日

leetcode1697. 检查边长度限制的路径是否存在

链接地址:https://leetcode.cn/problems/checking-existence-of-edge-length-limited-paths/

题意:

给你一个 n 个点组成的无向图边集 edgeList ,其中 edgeList[i] = [ui, vi, disi] 表示点 ui 和点 vi 之间有一条长度为 disi 的边。请注意,两个点之间可能有 超过一条边

给你一个查询数组queries ,其中 queries[j] = [pj, qj, limitj] ,你的任务是对于每个查询 queries[j] ,判断是否存在从 pjqj 的路径,且这条路径上的每一条边都 严格小于 limitj

请你返回一个 布尔数组 answer ,其中 answer.length == queries.length ,当 queries[j] 的查询结果为 true 时, answerj 个值为 true ,否则为 false




2022年12月15日

leetcode1945. 字符串转化后的各位数字之和

链接地址:https://leetcode.cn/problems/sum-of-digits-of-string-after-convert/

题意:

给你一个由小写字母组成的字符串 s ,以及一个整数 k

首先,用字母在字母表中的位置替换该字母,将 s 转化 为一个整数(也就是,'a'1 替换,'b'2 替换,... 'z'26 替换)。接着,将整数 转换 为其 各位数字之和 。共重复 转换 操作 k

例如,如果 s = "zbax"k = 2 ,那么执行下述步骤后得到的结果是整数 8

  • 转化:"zbax" ➝ "(26)(2)(1)(24)" ➝ "262124" ➝ 262124
  • 转换 #1262124 ➝ 2 + 6 + 2 + 1 + 2 + 4 ➝ 17
  • 转换 #217 ➝ 1 + 7 ➝ 8

返回执行上述操作后得到的结果整数。




2022年12月16日

leetcode1785. 构成特定和需要添加的最少元素

链接地址:https://leetcode.cn/problems/minimum-elements-to-add-to-form-a-given-sum/

题意:

给你一个整数数组 nums ,和两个整数 limitgoal 。数组 nums 有一条重要属性:abs(nums[i]) <= limit

返回使数组元素总和等于 goal 所需要向数组中添加的 最少元素数量 ,添加元素 不应改变 数组中 abs(nums[i]) <= limit 这一属性。

注意,如果 x >= 0 ,那么 abs(x) 等于 x ;否则,等于 -x




大感冒(休息一周)




2022年12月23日

leetcode2011. 执行操作后的变量值

链接地址:https://leetcode.cn/problems/final-value-of-variable-after-performing-operations/

题意:

存在一种仅支持 4 种操作和 1 个变量 X 的编程语言:

  • ++XX++ 使变量 X 的值 1
  • --XX-- 使变量 X 的值 1

最初,X 的值是 0

给你一个字符串数组 operations ,这是由操作组成的一个列表,返回执行所有操作后, X最终值




2022年12月24日

leetcode1754. 构造字典序最大的合并字符串

链接地址:https://leetcode.cn/problems/largest-merge-of-two-strings/

题意:

给你两个字符串 word1word2 。你需要按下述方式构造一个新字符串 merge :如果 word1word2 非空,选择 下面选项之一 继续操作:

  • 如果 word1 非空,将 word1 中的第一个字符附加到 merge 的末尾,并将其从 word1 中移除。
    • 例如,word1 = "abc" merge = "dv" ,在执行此选项操作之后,word1 = "bc" ,同时 merge = "dva"
  • 如果 word2 非空,将 word2 中的第一个字符附加到 merge 的末尾,并将其从 word2 中移除。
    • 例如,word2 = "abc" merge = "" ,在执行此选项操作之后,word2 = "bc" ,同时 merge = "a"

返回你可以构造的字典序 最大 的合并字符串 merge

长度相同的两个字符串 ab 比较字典序大小,如果在 ab 出现不同的第一个位置,a 中字符在字母表中的出现顺序位于 b 中相应字符之后,就认为字符串 a 按字典序比字符串 b 更大。例如,"abcd" 按字典序比 "abcc" 更大,因为两个字符串出现不同的第一个位置是第四个字符,而 d 在字母表中的出现顺序位于 c 之后。




2022年12月25日

leetcode1739. 放置盒子

链接地址:https://leetcode.cn/problems/building-boxes/

题意:

有一个立方体房间,其长度、宽度和高度都等于 n 个单位。请你在房间里放置 n 个盒子,每个盒子都是一个单位边长的立方体。放置规则如下:

  • 你可以把盒子放在地板上的任何地方。
  • 如果盒子 x 需要放置在盒子 y 的顶部,那么盒子 y 竖直的四个侧面都 必须 与另一个盒子或墙相邻。

给你一个整数 n ,返回接触地面的盒子的 最少 可能数量。




2022年12月26日

leetcode1759. 统计同构子字符串的数目

链接地址:https://leetcode.cn/problems/count-number-of-homogenous-substrings/

题意:

给你一个字符串 s ,返回 s同构子字符串 的数目。由于答案可能很大,只需返回对 109 + 7 取余 后的结果。

同构字符串 的定义为:如果一个字符串中的所有字符都相同,那么该字符串就是同构字符串。

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




2022年12月27日

leetcode2027. 转换字符串的最少操作次数

链接地址:https://leetcode.cn/problems/minimum-moves-to-convert-string/

题意:

给你一个字符串 s ,由 n 个字符组成,每个字符不是 'X' 就是 'O'

一次 操作 定义为从 s 中选出 三个连续字符 并将选中的每个字符都转换为 'O' 。注意,如果字符已经是 'O' ,只需要保持 不变

返回将 s 中所有字符均转换为 'O' 需要执行的 最少 操作次数。




2022年12月28日

leetcode1750. 删除字符串两端相同字符后的最短长度

链接地址:https://leetcode.cn/problems/minimum-length-of-string-after-deleting-similar-ends/

题意:

给你一个只包含字符 'a''b''c' 的字符串 s ,你可以执行下面这个操作(5 个步骤)任意次:

  1. 选择字符串 s 一个 非空 的前缀,这个前缀的所有字符都相同。
  2. 选择字符串 s 一个 非空 的后缀,这个后缀的所有字符都相同。
  3. 前缀和后缀在字符串中任意位置都不能有交集。
  4. 前缀和后缀包含的所有字符都要相同。
  5. 同时删除前缀和后缀。

请你返回对字符串 s 执行上面操作任意次以后(可能 0 次),能得到的 最短长度




2022年12月29日

leetcode2032. 至少在两个数组中出现的值

链接地址:https://leetcode.cn/problems/two-out-of-three/

题意:

给你三个整数数组 nums1nums2nums3 ,请你构造并返回一个 元素各不相同的 数组,且由 至少两个 数组中出现的所有值组成数组中的元素可以按 任意 顺序排列。




2022年12月30日

leetcode1760. 袋子里最少数目的球

链接地址:https://leetcode.cn/problems/minimum-limit-of-balls-in-a-bag/

题意:

给你一个整数数组 nums ,其中 nums[i] 表示第 i 个袋子里球的数目。同时给你一个整数 maxOperations

你可以进行如下操作至多 maxOperations 次:

  • 选择任意一个袋子,并将袋子里的球分到 2 个新的袋子中,每个袋子里都有正整数个球。
    • 比方说,一个袋子里有 5 个球,你可以把它们分到两个新袋子里,分别有 1 个和 4 个球,或者分别有 2 个和 3 个球。

你的开销是单个袋子里球数目的 最大值 ,你想要 最小化 开销。

请你返回进行上述操作后的最小开销。




2022年12月31日

leetcode2037. 使每位学生都有座位的最少移动次数

链接地址:https://leetcode.cn/problems/minimum-number-of-moves-to-seat-everyone/

题意:

一个房间里有 n 个座位和 n 名学生,房间用一个数轴表示。给你一个长度为 n 的数组 seats ,其中 seats[i] 是第 i 个座位的位置。同时给你一个长度为 n 的数组 students ,其中 students[j] 是第 j 位学生的位置。

你可以执行以下操作任意次:

  • 增加或者减少第 i 位学生的位置,每次变化量为 1 (也就是将第 i 位学生从位置 x 移动到 x + 1 或者 x - 1

请你返回使所有学生都有座位坐的 最少移动次数 ,并确保没有两位学生的座位相同。

请注意,初始时有可能有多个座位或者多位学生在 同一 位置。

标签:12,cn,problems,2022,https,字符串,刷题
From: https://www.cnblogs.com/jiamian/p/17017692.html

相关文章

  • 2022年11月刷题记录
    2022年11月1日leetcode1662.检查两个字符串数组是否相等链接地址:https://leetcode.cn/problems/check-if-two-string-arrays-are-equivalent/题意:给你两个字符串数组......
  • leetcode-121-easy
    BestTimetoBuyandSellStockYouaregivenanarraypriceswhereprices[i]isthepriceofagivenstockontheithday.Youwanttomaximizeyourprofitb......
  • [答题赛(第12轮)屏幕改变命运]第一个全对者发红包
    单选题。在公众号留言回答。第一个全答对着获得奖金红包。本消息发布24小时后公布答案和得奖者。1、以下哪一种情况,Android可以作为执行者()A)研究对象为某医疗健康应用,最......
  • 每周总结(22/12/10)
     王 S 聪想要在海外开拓万 D电影的市场,这次他在考虑:怎么拍商业电影才能赚钱?毕竟一些制作成本超过 1 亿美元的大型电影也会失败。这个问题对电影业来说比以往任何......
  • 每周总结(22/12/17)
    有一个对外营业的会议中心,有各种不同规格的会议室,为用户提供以下服务:1、用户可以按照会议人数、会议时间预订会议室。可以只预订1次,也可预订定期召开的会议。2、开会......
  • 每周总结(22/12/24)
    1、项目需求:石家庄铁道大学网络新闻为搭建公众信息交流平台,决定建立新闻发布平台。新闻发布平台按内容包括学校新闻、校内公告信息发布等若干新闻栏目,新闻撰稿人可登陆平......
  • 12微信小程序
    目录1微信小程序简介 61.1概念 61.2同类产品 62微信小程序开发文档 62.1寻找开发文档 63微信小程序使用流程 74项目结构 74.1项目文件描述 75安装开发者工具及设......
  • 每周总结(22/11/12)
    王S聪想要在海外开拓万D电影的市场,这次他在考虑:怎么拍商业电影才能赚钱?毕竟一些制作成本超过1亿美元的大型电影也会失败。这个问题对电影业来说比以往任何时候都更加......
  • 每周总结(22/12/26)
    根据原型演示的效果,按照业务用例模板完成信息导入和能力评估两个业务用例的详细描述:老年病评估系统第一阶段任务:1、信息导入:将人员基本信息加载到excel模板中导入到mysq......
  • 每周总结(22/12/3)
    2020级软件需求与分析系统开发能力测试  石家庄铁道大学网络新闻发布系统1、项目需求:石家庄铁道大学网络新闻为搭建公众信息交流平台,决定建立新闻发布平台。新闻发......