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

先存起来排序

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

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

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

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

相关推荐
fantasy_arch1 小时前
SVT-AV1 B帧决策和mini-GOP决策分析
算法·av1
声声codeGrandMaster1 小时前
逻辑回归-泰坦尼克号
算法·机器学习·逻辑回归
雪域迷影1 小时前
使用Python库获取网页时报HTTP 403错误(禁止访问)的解决办法
开发语言·python·http·beautifulsoup·urllib
吃茄子的猫1 小时前
python中global全局变量
python
Flash.kkl2 小时前
Python基础语法
开发语言·python
mu_guang_2 小时前
算法图解2-选择排序
数据结构·算法·排序算法
veminhe2 小时前
Python(二) 容器类型与对应操作行为
python
人工干智能2 小时前
调用client.beta.threads.runs.create后交由OpenAI云服务器端的处理
服务器·python·llm
xiaowu0802 小时前
IEnumerable、IEnumerator接口与yield return关键字的相关知识
java·开发语言·算法
wyg_0311132 小时前
机器问道:大模型RAG 解读凡人修仙传
人工智能·python·transformer