LeetCode

Weekly Contest 457

欢迎大家加QQ群:623375442。这周题目有点思维题。以前做过就不难。没碰到过的话,还是很有难度的。 Q1. 优惠券代码验证器 题目描述 给定三个长度为 n 的数组,分别表示 n 张优惠券的属性:code、businessLine 和 isActive。第 i 张优惠券具有以下属性: code:一个字符串,表示优惠券的标识符。 businessLine:一个字符串,表示优惠券的业务类别。 isActive:一个布尔值,表示优惠券是否当前有效。 如果满足以下所有条件,则认为该优惠券有效: code 非空,且仅由字母(a-z,A-Z)、数字(0-9)和下划线(_)组成。 businessLine 属于以下四个类别之一:"electronics"、"grocery"、"pharmacy"、"restaurant"。 isActive 为 true。 返回一个包含所有有效优惠券代码的数组,按照 businessLine 排序,顺序为:"electronics"、"grocery"、"pharmacy"、"restaurant",然后在每个类别内部按照代码的字典顺序升序排序。 解题思路 过滤有效优惠券:遍历所有优惠券,只有满足 isActive…

Biweekly Contest 160

Q1. 十六进制与三十六进制转换 题目翻译 给定一个整数 n。 返回 n^2 的十六进制表示和 n^3 的三十六进制表示的拼接结果。 十六进制使用数字 0–9 和大写字母 A–F 表示 0–15。 三十六进制使用数字 0–9 和大写字母 A–Z 表示 0–35。 示例: 输入:n = 13 输出:"A91P1" 解释: - n^2…

Weekly Contest 456

欢迎大家加QQ群:623375442。周赛题解都会在周日下午3点左右发布。这周题目不难,TrieTree周 Q1. Partition String 给定一个字符串 s,按照以下步骤将其分割为多个唯一的子串: 从索引0开始构建一个子串。 继续扩展当前子串,直到当前子串中的字符没有出现过。 一旦当前子串是唯一的,将其加入结果列表,并从下一个字符开始构建新的子串。 重复上述步骤直到遍历完整个字符串。 返回字符串数组 segments,其中 segments 是第i个子串。 测试样例: 输入:s = "abbccccd" 输出: 解答: 使用字符串构建过程中的每个子串,避免重复。 利用Trie树(前缀树)来存储已出现的字符及其组合。 class Solution { public List<String> partitionString(String s) {…

Biweekly Contest 159 & Weekly Contest 455

欢迎大家加QQ群:623375442。周赛题解都会在周日下午3点左右发布。双周赛第四题太难了,不会做。 3587. Minimum Adjacent Swaps to Alternate Parity 给你一个由互不相同的整数组成的数组 nums 。 在一次操作中,你可以交换任意两个 相邻 元素。 在一个排列中,当所有相邻元素的奇偶性交替出现,我们认为该排列是 有效排列。这意味着每对相邻元素中一个是偶数,一个是奇数。 请返回将 nums 变成任意一种 有效排列 所需的最小相邻交换次数。 如果无法重排 nums 来获得有效排列,则返回 -1。 测试样例: 输入:nums = 输出:3 解释:将…

Weekly Contest 454

欢迎大家加QQ群:623375442。周赛题解都会在周日下午3点左右发布。欢迎继续关注。这周题目确实不太难。 3582. Generate Tag for Video Caption 给你一个字符串 caption,表示一个视频的标题。 需要按照以下步骤 按顺序 生成一个视频的 有效标签 : 将 所有单词 组合为单个 驼峰命名字符串 ,并在前面加上 '#'。驼峰命名字符串 指的是除第一个单词外,其余单词的首字母大写,且每个单词的首字母之后的字符必须是小写。 移除 所有不是英文字母的字符,但 保留 第一个字符 '#'。 将结果 截断 为最多 100…

Biweekly Contest 158 & Weekly Contest 453

欢迎大家加QQ群:623375442。最近LeetCode的周赛着实太垃圾了,时不时unrate。不想准时起来做了。以后双周赛和周赛题解都会在周日下午3点左右发布。欢迎继续关注。 3572. Maximize Y‑Sum by Picking a Triplet of Distinct X‑Values 给你两个整数数组 x 和 y,长度均为 n。你必须选择三个 不同 的下标 i ,j 和 k,满足以下条件: x != x x != x x !=…

LeetCode Contest 452

欢迎大家加QQ群:623375442。 Q1. Partition Array into Two Equal Product Subsets 给你一个整数数组 nums,其中包含的正整数 互不相同 ,另给你一个整数 target。 请判断是否可以将 nums 分成两个 非空、互不相交 的 子集 ,并且每个元素必须 恰好 属于 一个 子集,使得这两个子集中元素的乘积都等于 target。 如果存在这样的划分,返回 true;否则,返回 false。 子集…

LeetCode Contest 451

欢迎大家加QQ群:623375442。周赛的分数有点毒,两道Hard还是来不及写完了。 100678. Find Minimum Log Transportation Cost 给你三个整数 n、m 和 k。 有两根长度分别为 n 和 m 单位的木材,需要通过三辆卡车运输。每辆卡车最多只能装载一根长度 不超过 k 单位的木材。 你可以将木材切成更小的段,其中将长度为 x 的木材切割成长度为 len1 和 len2 的段的成本为 cost = len1 *…

Biweekly Contest 157

欢迎大家加QQ群:623375442。这周终于手速场了,简单很多。 100621. Sum of Largest Prime Substrings 给定一个字符串 s,找出可以由其 子字符串 组成的 3个最大的不同质数 的和。 返回这些质数的 总和 ,如果少于 3 个不同的质数,则返回 所有 不同质数的和。 质数是大于 1 且只有两个因数的自然数:1和它本身。 子字符串 是字符串中的一个连续字符序列。 注意:每个质数即使出现在 多个 子字符串中,也只能计算 一次 。此外,将子字符串转换为整数时,忽略任何前导零。…

LeetCode Contest 450

欢迎大家加QQ群:623375442。今天的题目不算是很难。 100668. Smallest Index With Digit Sum Equal to Index 给你一个整数数组 nums 。 返回满足 nums 的数位和(每一位数字相加求和)等于 i 的 最小 下标 i 。 如果不存在满足要求的下标,返回 -1 。 测试样例: 输入:nums = 输出:2 解释:nums…