掘友等级
营业时间:工作日10:00-19:00
没回就先留言
获得徽章 0
#刷题交流# 数列差异的最小化
公式简化:首先,我们可以将公式 ∣(a[i]−b[j])2−k2∣ 进行简化。注意到 (a[i]−b[j])2−k2 可以分解为 (a[i]−b[j]−k)(a[i]−b[j]+k)。因此,我们需要找到使得 ∣(a[i]−b[j]−k)(a[i]−b[j]+k)∣ 最小的 a[i] 和 b[j]。
排序:为了高效地找到最接近的 a[i]−b[j],我们可以对数列 a 和 b 进行排序。排序后,我们可以使用双指针技术来遍历数列 a 和 b,从而找到最接近 k 的差值。
双指针技术:
初始化两个指针 i 和 j,分别指向数列 a 和 b 的起始位置。
计算当前的差值 diff = a[i] - b[j]。
如果 diff 大于 k,则增加 j 以减小 diff。
如果 diff 小于 k,则增加 i 以增大 diff。
如果 diff 等于 k,则直接返回 0,因为此时公式值为 0。
在每一步中,记录 ∣(a[i]−b[j]−k)(a[i]−b[j]+k)∣ 的最小值。
#刷题交流# 继续刷题打卡
#刷题交流# 打点计数区间合并
排序:将输入的区间按起始点进行排序。
合并区间:遍历排序后的区间,合并重叠的区间。
计算总数:计算合并后每个区间的长度,并累加这些长度
#刷题交流# 飞机大战游戏策略,优先处理血量较高的敌人,这样可以最大化利用A键的效果。对于血量为1的敌人,直接使用B键秒杀。
#刷题交流# 比赛胜场计算,可以使用一个列表来存储每个选手的胜场数。由于每个选手的能力值就是他们的序号,可以直接使用序号来索引这个列表。
#刷题交流# 下午上班摸鱼来个题:小s的菜式制作
计算初始可制作的次数:计算在没有使用万能材料的情况下,最多可以制作多少次菜。这可以通过取a和b的最小值的一半来计算,因为每次制作需要2个材料a和2个材料b。
使用万能材料:计算剩余的材料a和材料b的数量。
计算剩余的万能材料数量。
使用万能材料来补充不足的材料a或材料b,直到万能材料用完或材料a和材料b都满足需求。
最终计算:结合初始可制作的次数和使用万能材料后可增加的制作次数,得到最终结果。
#刷题交流# 最短服务时间优化磁盘调度,时间管理:需要确保在处理请求时,只处理当前时间之前已经到达的请求。距离计算:每次选择请求时,需要计算磁头到每个请求的距离,并选择最小的那个。
#刷题攻略# 获取排名第三的数
去重:将数组中的所有分数放入一个集合中,这样可以自动去除重复的分数。
排序:将集合中的分数按降序排序。
返回结果:如果排序后的列表长度大于等于3,返回第三大的分数;否则返回最大的分数。
下一页