掘友等级
营业时间:工作日10:00-19:00
没回就先留言 获得徽章 0
#刷题交流# 打卡第五天:小E的射击训练 使用了数学库和修正运算符。其中距离需要向上取整math.ceil(distance)才能获得准确的得分
#刷题交流# 堆排序: 一种基于堆数据结构(通常是二叉堆)的比较排序算法。它通过构建最大堆,然后依次将堆顶元素与最后一个元素交换,并缩小堆的范围来实现排序。
#刷题交流# 问题:最小替换子串长度 初始化: 计算字符串的总长度 n。使用 Counter 统计每个字符的出现次数。 检查初始状态: 如果每个字符的出现次数已经满足条件(即每个字符的出现次数都不超过 n // 4),则直接返回 0。 滑动窗口: 使用两个指针 l 和 r 来表示窗口的左右边界。初始化 l 和 r 为 0。移动右指针 r,并减少 cnt[s[r]] 的计数。当窗口内的字符计数满足条件时,记录当前窗口的长度,并尝试缩小窗口(移动左指针 l)。更新最小窗口长度。
#刷题交流# 数列差异的最小化, 排序:首先对数列 a 和 b 进行排序。排序后的数列可以帮助我们更快地找到最接近的元素对。 双指针法:使用双指针法来遍历排序后的数列 a 和 b。初始时,两个指针分别指向 a 和 b 的起始位置。 计算公式值:在每一步中,计算当前指针所指元素的公式值 ∣(a[i]−b[j])2−k2∣。 移动指针:根据当前公式值的大小,决定移动哪个指针。如果 a[i]<b[j],则移动 a 的指针,否则移动 b 的指针。这样可以保证我们始终在寻找最接近的元素对。 更新最小值:在每一步中,更新最小公式值。
#刷题交流# 在问题“ 环状DNA序列的最小表示法 ”问题中;关键点在于: 扩展序列:通过将原始序列复制并拼接,可以避免复杂的环状处理逻辑。 字典序比较:使用字符串的比较操作来找到最小表示。 通过以上步骤,你可以有效地找到环状 DNA 序列的最小字典序表示。
#刷题交流# 巧克力板选择问题,这题的关键排序:通过排序巧克力板,可以更高效地找到适合放入背包的巧克力板。贪心算法:从最轻的巧克力板开始放入背包,直到背包无法再放入更多的巧克力板。
#刷题交流# 量化数字的统计 生成量化数字: 量化数字的形式是 d, dd, ddd, ...,其中 d 是相同的数字。 例如,1, 22, 333, 4444, ... 都是量化数字。 检查范围: 对于每一个生成的量化数字,检查它是否在 [L, R] 范围内。 如果在这个范围内,再检查它是否能被 3 整除。 统计符合条件的数字: 统计所有符合条件的量化数字的个数。
#刷题交流# 吃饭前来个小题:机器人能量冒险 初始化当前位置为0。 遍历数组,直到到达最后一个位置或无法继续前进: 如果当前位置的能量值为0且不是最后一个位置,返回 FALSE。 更新当前位置为能够到达的最远位置。 如果能够到达最后一个位置,返回 TRUE。
#刷题交流# 找到独一无二的糖葫芦串,字典:用于存储每个糖葫芦及其甜度。集合:用于快速检查糖葫芦是否独一无二。
#刷题交流# 如果当前字符是 'U',我们可以考虑在其后面插入两个 'C' 来形成 "UCC"。
下一页