蓝桥杯 算法提高 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)

先存起来排序

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

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

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

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

相关推荐
曲幽几秒前
FastAPI实战:Redis缓存与分布式锁的深度解析
redis·python·cache·fastapi·web·lock
QiZhang | UESTC3 分钟前
【算法题学习方法调整】回溯核心逻辑调整:从记代码到套逻辑调整
算法·学习方法
救救孩子把5 分钟前
59-机器学习与大模型开发数学教程-5-6 Adam、RMSProp、AdaGrad 等自适应优化算法
人工智能·算法·机器学习
Σίσυφος19005 分钟前
PCL 中常用的滤波对比
算法
进击的小头5 分钟前
连续系统离散化方法(嵌入式信号处理实战指南)
c语言·算法·信号处理
小码过河.8 分钟前
17装饰器模式
开发语言·python·装饰器模式
gf132111116 分钟前
python_生成RPA运行数据报告
windows·python·rpa
嫂子开门我是_我哥17 分钟前
第八节:条件判断与循环:解锁Python的逻辑控制能力
开发语言·python
永远都不秃头的程序员(互关)19 分钟前
【决策树深度探索(五)】智慧之眼:信息增益,如何找到最佳决策问题?
算法·决策树·机器学习
2301_8059629319 分钟前
树莓派的一些问题记录-1:usbboot仓库
python·gitee