线段树专题

news/2024/5/20 12:05:15

落谷1607

在这里插入图片描述

#include<bits/stdc++.h>
using namespace std;#define ls u<<1
#define rs u<<1|1const int N = 1e5;int n, k, c, ans;
struct line
{int l, r, m; // m为候车的牛的数量bool operator<(line b) {return r < b.r;}
}s[N];struct tree
{int l, r, mx, lazy;
}t[N*4];void pushup(int u) {t[u].mx = max(t[ls].mx, t[rs].mx);
}void pushdown(int u) {if (t[u].lazy) {t[ls].mx += t[u].lazy;t[rs].mx += t[u].lazy;t[ls].lazy += t[u].lazy;t[rs].lazy += t[u].lazy;t[u].lazy = 0;}
}void build(int u, int l, int r) {// 建树t[u] = { l,r };if (l == r) return;int mid = l + r >> 1;build(ls, l, mid);build(rs, mid + 1, r);pushup(u);
}void change(int u, int l, int r, int v) {if (l > t[u].r || r < t[u].l) return;if (l <= t[u].l && r >= t[u].r) {// 覆盖的情况t[u].mx += v;t[u].lazy += v;return;}pushdown(u);change(ls, l, r, v);change(rs, l, r, v);pushup(u);
}int query(int u, int l, int r) {if (l > t[u].r || r < t[u].l) return 0;if (l <= t[u].l && r >= t[u].r) {return t[u].mx;}pushdown(u);return max(query(ls, l, r), query(rs, l, r));
}int main() {cin >> k >> n >> c;for (int i = 1; i <= k; i++) {cin >> s[i].l >> s[i].r >> s[i].m;}sort(s + 1, s + k + 1);build(1, 1, n);for (int i = 1; i <= k; i++) {int l = s[i].l, r = s[i].r;int mx = query(1, l, r - 1);int x = min(c - mx, s[i].m);change(1, l, r - 1, x);ans += x;}cout << ans;return 0;
}

http://www.mrgr.cn/p/86482677

相关文章

前端报错

一、加载控制台报错,但功能好像还都正确。 原因:组件还没加载就访问,是会报类似如下的错

uniapp怎么使用jsx

安装vitejs/plugin-vue-jsx npm install vitejs/plugin-vue-jsx -Dvite.config.js配置 import { defineConfig } from "vite"; import uni from "dcloudio/vite-plugin-uni"; import vueJsx from vitejs/plugin-vue-jsxexport default defineConfig({plu…

在云打印服务平台上打印资料有什么优势?

随着移动互联网和电子商务的发展,现在有越来越多的用户选择在网上购物。而对于学生们来说,现在也有越来越多的同学们开始去网上打印。而云打印的出现,让这些网上打印资料的学生选择了云打印服务。那么在云打印服务平台上打印资料有什么优势?今天小易就带大家来了解一下。 在…

GitLab使用记录

GitLab 文章目录 1. 常用命令1.1 配置邮箱 用户名1.2 查看配置1.3 基本语法 2. 连接gitlab3. 直接拉去项目 1. 常用命令 1.1 配置邮箱 用户名 git config --global user.name ShangzheChen git config --global user.email 735511377qq.com1.2 查看配置 cat ~/.gitconfig这…

labview技术交流-将时间字符串转换成时间格式

应用场景 我们在数据库中设计了datetime类型的字段&#xff0c;比如字段名就叫“保存时间”&#xff0c;当我们使用labview将表中数据读取出来后datetime类型的数据是以字符串的格式显示的。而我们想计算两条数据“保存时间”的间隔时间时&#xff0c;用字符串类型自然是没法计…

JMeter + ant + Jenkins 接口测试持续集成

JMeter + ant + Jenkins 接口测试持续集成 操作系统:linux环境变量 地址jdk11 https://www.oracle.com/java/technologies/downloads/jmeter 5.6 https://jmeter.apache.org/ant 1.10.14 https://ant.apache.org/bindownload.cgiJenkins 2.414.1 https://mirrors.jenkins.io/一…

云打印怎么保护用户的隐私?

随着互联网的发展,在当下的网络环境下,用户的隐私越来越难以保证安全。特别是对于打印业务来说,盗取用户文件、转卖客户信息的内容时有发生。那么我们作为出色的云打印服务商,该如何保证用户的隐私呢?今天就来给大家介绍一下。 当前打印市场乱象 在当下的网络环境下,我们…

How Linux Works I - How Linux Start Up

目录 Linux如何启动&#xff1f; 启动信息 内核启动初始化与启动选项 写在前面&#xff1a;上一个专栏中我写完了内核源码层面看Linux&#xff0c;我们把抽象层拉高一点&#xff0c;看看Linux是如何工作的&#xff01; Linux如何启动&#xff1f; BIOS&#xff08;Basic Inpu…

从技术谈到管理,把系统优化的技术用到企业管理

管理工作是什么呢 很多技术人员在职业上对自己要求高&#xff0c;工作勤奋&#xff0c;承担越来越大的责任&#xff0c;最终得到信任&#xff0c;被提拔到管理岗位。但是往往缺乏专业的管理知识&#xff0c;在工作中不能从整体范围优化工作流程&#xff0c;仍然是“个人贡献者…

“人工智能+”推进新质生产力发展论坛暨工作室实践实训基地授牌仪式圆满结束

4月27日&#xff0c;由江西财经大学现代经济管理学院主办的“人工智能”推进新质生产力发展论坛暨“江财现经管泰迪数智技术”校企工作室实践实训基地授牌仪式在江西财经大学现代经济管理学院共青城校区举行&#xff0c;学院院长王金海&#xff0c;副院长丁美东&#xff0c;副院…

如何将pdf文件换成3d模型?---模大狮模型网

PDF文件是一种广泛用于文档传输和共享的格式&#xff0c;但在某些情况下&#xff0c;我们可能希望将其中的内容转换为更具交互性和视觉效果的3D模型。本文将介绍如何将PDF文件转换为3D模型&#xff0c;为您展示实现这一想象的步骤。 选择合适的PDF文件&#xff1a; 首先&#…

你的许可证不是正版,你可能是盗版软件的受害者?

你的许可证不是正版,你可能是盗版软件的受害者? 问题分析 有的用户在使用 Office 时可能会遇到许可证问题,可能是弹窗,也有可能是横幅。 我们不讨论以前是什么样,现在是这样的: 微软为了遏制 KMS 盗版过于横行,封禁了使用 KMS 工具进行激活的手段,因为使用 KMS 工具激活…

Go-Zero自定义goctl实战:定制化模板,加速你的微服务开发效率(四)

gozero如何自定义goctl?本文详解和实战,通过本文你将了解goctl的妙用,提高你的开发效率。介绍如何使用goctl工具实现模板定制化,并根据实际项目业务需求进行模板定制化实现。前言 上一篇文章带你实现了Go-Zero和goctl:解锁微服务开发的神器,快速上手指南,本文将继续深入…

插入法(直接/二分/希尔)

//稳定耗时&#xff1a; 双向冒泡&#xff0c;可指定最大最小值个数MaxMinNum<nsizeof(Arr)/sizeof(Arr[0]), void BiBubbleSort(int Arr[],int n&#xff0c;int MaxMinNum){int left0,rightn-1;int i;bool notDone true;int temp;int minPos;while(left<right&&am…

智慧旅游推动旅游服务智慧化转型:借助智能科技的力量,实现旅游资源的精准匹配和高效利用,为游客提供更加便捷、舒适的旅游环境

目录 一、引言 二、智慧旅游的定义与特点 &#xff08;一&#xff09;智慧旅游的定义 &#xff08;二&#xff09;智慧旅游的特点 三、智能科技在旅游服务中的应用 &#xff08;一&#xff09;大数据分析助力旅游决策 &#xff08;二&#xff09;人工智能实现个性化推荐…

1、安装terminator分屏工具

1 安装分屏工具terminator 打开ubuntu自带终端,输入sudo apt-get install terminator命令安装分屏工具terminator。 再重新打开ubuntu自带终端,在屏幕上右击

【GaussDB(for MySQL)】 Big IN查询优化

在生产环境中,经常会遇到客户业务的SQL语句进行过滤查询,然后进行聚合处理,并且IN谓词列表中包含几千甚至上万个常量值。本文分享自华为云社区《【MySQL技术专栏】GaussDB(for MySQL) Big IN查询优化》,作者:GaussDB 数据库。背景介绍在生产环境中,经常会遇到客户业务的S…

2 集成开发环境的搭建

1 安装分屏工具terminator 打开ubuntu自带终端,输入sudo apt-get install terminator命令安装分屏工具terminator。 再重新打开ubuntu自带终端,在屏幕上右击

IDEA使用Maven生成普通项目没有生成iml文件解决方法

右击主目录选择&#xff1a; Open in Terminal 在生成的控制台输入&#xff1a; mvn idea:module 回车便自动生成iml文件啦&#xff01; 双击下主目录就可以看见啦