2023-01-14

题目

题目传送门

翻译

翻译

难度&重要性(1~10):4

题目来源

AtCoder

题目算法

区间覆盖,线段树,双堆

解题思路

可以将问题转化为区间覆盖问题和单点查询问题。

一共会有 \(3\) 种操作:

\(1.\) 插入一个区间。

\(2.\) 删除一个区间。

\(3.\) 查询一个区间。

想到这我是想用双堆去做。

一个小根堆存已经插入的区间,一个小根堆存已经被删除的区间。

当两个堆的堆顶相同时,就代表这个区间已经删除了可以去掉了。

此时的开始时间就会转化为 \(s-x\) 和 \(t-x\),那么从 \(s-x\) 到 \(t-x\) 这段时间走到这的就必然停下。

建议将施工结束的时间从小到大排序,如果结束时间相同就比较施工开始时间。

完成状态

已完成

[ABC128E] Roadwork的更多相关文章

  1. AtCoder ABC 128E Roadwork

    题目链接:https://atcoder.jp/contests/abc128/tasks/abc128_e 题目大意 在一条路上(这条路可以看做坐标轴 x 轴从 0 开始方向为正无穷方向的射线),有 ...

随机推荐

  1. 2021-09-26:搜索旋转排序数组。整数数组 nums 按升序排列,数组中的值 互不相同 。在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了

    2021-09-26:搜索旋转排序数组.整数数组 nums 按升序排列,数组中的值 互不相同 .在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.lengt ...

  2. Java JDK1.8环境变量配置

    Java JDK1.8.0_152下载地址:https://pan.baidu.com/s/1BRB2MRETPdWVL-IN2FRTEw   提取码:63jb 下载好后傻瓜式一键Next下载就好,默 ...

  3. phpstudy-sqlilabs-less-1

    题目:POST - Error Based - Double quotes- String - with twist 基于错误的双引号post型字符变形的注入 先抓下包,拿到格式 uname=1#&a ...

  4. Firefox Quantum 向左,Google Chrome 向右

    今天,又重新安装了一下 Firefox Quantum-68.0 (64 位),不同的是这一次安装的是国际中文版,而不是北京谋智火狐的版本. 北京谋智火狐 国际中文版 总的来说,有几点体验: 在 ht ...

  5. Microsoft Office 2019 官方镜像下载 仅支持Win10系统

    Office 2019 专业增强版:(注:这是一个镜像文件) http://officecdn.microsoft.com/pr/492350f6-3a01-4f97-b9c0-c7c6ddf67d6 ...

  6. 写一个Python简单的Socket网络通讯

    完成需求 用Python完成一个简单的Socket通讯实例 1. 服务端 用于提供服务 源码: import socket s = socket.socket() # 创建服务器端套接字 # sk.s ...

  7. 通过模仿学会Python爬虫(一):零基础上手

    好家伙,爬虫来了 爬虫,这玩意,不会怎么办, 诶,先抄一份作业回来 1.别人的爬虫  Python爬虫史上超详细讲解(零基础入门,老年人都看的懂)_ChenBinBini的博客-CSDN博客 # -* ...

  8. 深入分析Go语言与C#的异同

    摘要:本文由葡萄城技术团队于博客园原创并首发.转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 前言 为了更加深入地介绍Go语言以及与C#语言的比较,本文将会 ...

  9. Python asyncio 库源码分析

    Python asyncio 库源码分析 前言 本着 「路漫漫其修远兮, 吾将上下而求索」 的精神.终于要开始深入研究 Python 中 asyncio 的源码实现啦. 本文章可能篇幅较长,因为是逐行 ...

  10. 【webpack系列】从基础配置到掌握进阶用法

    前言 本篇文章将介绍一些webpack的进阶用法,演示内容继承自上一篇文章的内容,所以没看过上一篇文章的建议先学习上一篇内容再阅读此篇内容,会更有利于此篇的学习- 文件指纹 文件指纹指的是打包输出的文 ...