获得徽章 0
- #寻找年味#
别人的年味:烟花、春晚、年夜饭。
我的年味:监控、报警、打补丁。
进入硬核“值班闯关”模式第一天,希望服务稳如老狗,QPS 翻倍但系统不宕。只要我不动代码,代码就没法动我!
此时此刻,还有多少掘友和我一样在守着服务器?评论区集合,大家互相打个气,祝大家值班无报警,平安过大年!展开赞过41 - #刷题交流#
385.小C的mex查询
首先,计划如下:
初始化一个布尔数组 present 来标记每个非负整数是否在集合中,以及一个变量 mex 来记录当前的 mex。
遍历每个查询 [l, r],将区间内的所有整数标记为存在。
在每次操作后,更新 mex,直到找到集合中未出现的最小非负整数。
将每次操作后的 mex 添加到结果列表中。
最终返回结果列表。
def solution(q: int, queries: list) -> list:
result = []
present = set()
mex = 0
for l, r in queries:
for num in range(l, r + 1):
present.add(num)
if num == mex:
while mex in present:
mex += 1
result.append(mex)
return result
if __name__ == '__main__':
print(solution(4, [[1, 3], [7, 8], [0, 5], [3, 6]]) == [0, 0, 6, 9])
print(solution(3, [[0, 2], [3, 4], [6, 10]]) == [3, 5, 5])
print(solution(2, [[2, 5], [7, 9]]) == [0, 0])展开赞过评论1 - #刷题交流#
记录出现次数排序
def solution(nums, k):
# Please write your code here
from collections import Counter
cnt = Counter(nums)
t = sorted(cnt.items(), key=lambda x: x[1], reverse=True)
res = []
for i in range(k):
res.append(t[i][0])
return ",".join(map(str, sorted(res)))
return -2
if __name__ == "__main__":
# You can add more test cases here
print(solution([1, 1, 1, 2, 2, 3], 2) == "1,2")
print(solution([1], 1) == "1")展开评论点赞