蓝桥杯 算法提高 ADV-1162 阴谋 python AC

keyword:数组、排序

python 复制代码
n = int(input())
d = {}
for _ in range(n):
    a, b = map(int, input().split())
    if (a in d and d[a] < b) or a not in d:
        d[a] = b
d = sorted(d.items(), key=lambda x: x[0])
ans = 0
l, r = d[0][0], d[0][1]
for i, j in d[1:]:
    if i <= r:
        if j > r:
            r = j
    else:
        ans += r - l
        l, r = i, j
ans += r - l
print(ans)

先存起来排序

每种情况分别判断下一段区间:

--下一段左区间在当前区间内,合并两段区间,更新右区间为两段最大的右区间

--下一段左区间在当前区间外,把当前区间长度累加到变量中,更新左右区间为下一段左右区间

坑点是题目说左闭右闭,实际上是左闭右开

相关推荐
维度攻城狮1 分钟前
PyCharm 使用 DevContainer 开发:打造一致、隔离、高效的开发环境
ide·python·pycharm·devcontainer
我能坚持多久3 分钟前
优选算法——专题一双指针(上):附四道例题详解
c++·学习·算法
Tim_109 分钟前
【C++】023、移动语义&深拷贝
开发语言·c++·算法
ctlover16 分钟前
Python模块与包
开发语言·python
月光船幽幽19 分钟前
锁死后干预有效性的关键突破
人工智能·python·算法
2501_9065651222 分钟前
哥德巴赫猜想
算法
ShineWinsu24 分钟前
对于C++中unordered_map的详细介绍
数据结构·c++·算法·面试·stl·哈希表·unordered_map
东东最爱敲键盘28 分钟前
day3.c++函数与预处理 string
c++·算法
阳光开朗男孩28 分钟前
Pytorch的安装与配置
人工智能·pytorch·python
等一朵映山红31 分钟前
动态图 vs 静态图:PyTorch 与 TensorFlow 架构底层对比
人工智能·pytorch·python