摘要: 给一个数组queries,queries[j]=[p, q, limit],你的任务是对于每个查询,判断是否存在从 p 到 q 的路径,且这条路径上的每一条边都 严格小于 limit。 2 ⇐ n ⇐ 105 1 ⇐ edgeList.length, queries.length ⇐ 105 思路: 阅读全文
posted @ 2020-12-20 16:20 童年の波鞋 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 从数组A中删除一个含有 若干不同元素 的子数组。删除子数组的 得分 就是子数组各元素之 和 。 返回 只删除一个 子数组可获得的 最大得分 。 思路:前缀和+滑动窗口 class Solution: def maximumUniqueSubarray(self, A: List[int]) -> i 阅读全文
posted @ 2020-12-20 11:59 童年の波鞋 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 开始你在下标 0 处。每一步,你最多可以往前跳 k 步。你的目标是到达数组最后一个位置(下标为 n - 1 ),你的 得分 为经过的所有数字之和。 请你返回你能得到的 最大得分 。 思路:单调队列维护当前位置前面最大k个位置的最大得分的下标(可O(1)取出) const int N=1e5+5; c 阅读全文
posted @ 2020-12-20 11:58 童年の波鞋 阅读(100) 评论(0) 推荐(0) 编辑