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

先存起来排序

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

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

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

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

相关推荐
看我干嘛!几秒前
python第四次作业
开发语言·python
疯狂的喵1 分钟前
使用Flask快速搭建轻量级Web应用
jvm·数据库·python
smj2302_796826524 分钟前
解决leetcode第3826题.最小分割分数问题
数据结构·python·算法·leetcode
多多*5 分钟前
2026年最新 测试开发工程师相关 Linux相关知识点
java·开发语言·javascript·算法·spring·java-ee·maven
VT.馒头17 分钟前
【力扣】2705. 精简对象
javascript·数据结构·算法·leetcode·职场和发展·typescript
元亓亓亓26 分钟前
LeetCode热题100--136. 只出现一次的数字--简单
算法·leetcode·职场和发展
铁蛋AI编程实战28 分钟前
ChatWiki 开源 AI 文档助手搭建教程:多格式文档接入,打造专属知识库机器人
java·人工智能·python·开源
程序员小远29 分钟前
UI自动化测试用例管理平台搭建
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
2301_7634725830 分钟前
实时系统下的C++编程
开发语言·c++·算法
张祥64228890430 分钟前
二次型:从线性代数到测量平差的桥梁
线性代数·算法·机器学习