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

先存起来排序

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

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

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

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

相关推荐
念越17 小时前
蓝桥杯17届功能测试模拟1期题目及解析(1)
功能测试·蓝桥杯·测试用例·场景法
吴佳浩17 小时前
GPU 编号进阶:CUDA\_VISIBLE\_DEVICES、多进程与容器化陷阱
人工智能·pytorch·python
Liu6288818 小时前
C++中的工厂模式高级应用
开发语言·c++·算法
全栈凯哥18 小时前
18.Python中的导入类完全指南
python
AI科技星18 小时前
全尺度角速度统一:基于 v ≡ c 的纯推导与验证
c语言·开发语言·人工智能·opencv·算法·机器学习·数据挖掘
sunwenjian88618 小时前
Java进阶——IO 流
java·开发语言·python
条tiao条19 小时前
KMP 算法详解:告别暴力匹配,让字符串匹配 “永不回头”
开发语言·算法
guts35019 小时前
图像篡改数据集下载:COVERAGE、CASIA
python·数据集
干啥啥不行,秃头第一名19 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
森林猿19 小时前
java-modbus-读取-modbus4j
java·网络·python