P2161 会场预约(区间染色)

UFS3.1协议实战解析:从物理层眼图到UPIU级调试 UFS(Universal Flash Storage)是现代高性能嵌入式与移动设备的核心存储协议,其演进至UFS3.1标志着从eMMC向全栈高速串行架构的关键跃迁。该协议基于M-PHY物理层与UniPro链路层构建,通过HS-Gear3(11.6Gbps)、Write Booster、Tagged Command Queuing等机制突破带宽与延迟瓶颈。其技术价值不仅在于理论吞吐提升,更体现在信号完整性约束、状态机时序鲁棒性、缓存一致性保障等工程落地难点上。典型应用场景覆盖旗舰智能手机冷启动优化、车载边缘 阅读详情

https://www.luogu.org/problemnew/show/P2161

题解

这题可以转换成区间染色的问题,即对一段区间进行染色,问最后纯色的区间一共有多少个(不超过一种颜色的区间)。

对每一段区间维护一个color和tag,color>0代表该区间染了一种颜色,color=-1代表区间杂色,color=0代表区间无色。
tag就是一个懒惰标记。
这里有两个操作:

  1. 查询当前[l,r]染色区间的个数,并将这些区间去除(只要接触到[l,r]就要去除)。
  2. 将[l,r]染上颜色。

对于操作1
如果查询到[l,r]范围内的color != -1 且不等于 0,那么说明该区间只有一种颜色,将这个颜色存起来,如果是-1(杂色),那就继续往下找。
知道了有先前已经染了哪些颜色后,我们就需要把前面的颜色都去除,所以我们必须将操作都离线存储,这样才能知道每个颜色对应的区间,然后update删除。

对于操作2
怎么删除的就怎么添加,注意打上tag标记和区间加法一样。

还要注意的是color的pushup,当左儿子和右儿子颜色不同时color = -1,若都无色则为0,否则就是其中一种颜色。


pytorch gpu运行安装重点(CUDA12.3) pytorch gpu加速 阅读详情

相关推荐

华硕ROG幻16笔记本电脑模式切换管理工具完美替代华硕奥创中心管理工具

参考文档1这个工具可以完美替代华硕奥创中心工具,可以定制化不同模式下的CPU、GPU、风扇转速、电池计划等。是由华硕开发人员开发的一个纯绿色的系统管理工具。直接展示启动后的工具界面效果图:这个工具也可以一键式停止正在运行的华硕ASUS服务,减少不必要的资源消耗。

追梦&天空的博客 1万+

询问区间是否同色

下面再看一个例子:有一条直线,每次把其中一段染成某种颜色,要求输出最终的染色 情况。 首先,可以把所有操作所涉及到的坐标离散化,从而可以用整数区间来表示直线上的线 段。然后,由于现在的问题不涉及区间的查询,只涉及区间的修改,我们不需要考虑“如何 合并两条线段的信息”这一问题,而只需考虑“如何在树上作标记以快速维护每个位置的颜 色”。不难发现,这个题目中,每个节点不需要记录前面意义上的“值

zuihoudebingwen的专栏 780

RK3588嵌入式开发:从零构建Rockit多媒体处理引擎的实战指南

本文详细介绍了如何在RK3588嵌入式平台上从零构建Rockit多媒体处理引擎的实战指南。涵盖开发环境搭建、工具链配置、源码编译流程、硬件加速优化及典型问题解决方案,帮助开发者高效利用RK3588的NPU和VPU加速特性,实现高性能多媒体处理应用。

mango的博客 186

线段树进阶-染色问题 附poj-2777题解

区域染色覆盖问题 假设某大学有一面文化墙,各个学院都可以在上面涂色,要求涂色区域高必须和墙一样,宽度任意但必须是整数(以米为单位)。涂色可以覆盖其他学院的涂色。现在若干个学院涂色之后最终这面墙上能看见多少种颜色。 这就是简单的染色问题了。当然有很多种不同的说法,但整体上离不开这两个问题:1.区域覆盖。2.多种染色方式。既然是区域操作,那么用线段树是比较合理了。用...

iwts 5373

EndNoteX9完整详细安装教程

EndNoteX9完整详细安装教程

rothschild666的博客 10万+

基于Simulink环境,提供一个关于如何对DC-DC变换器进行效率分析的仿真建模

效率定义:变换器效率通常定义为输出功率与输入功率之比,即 η=PoutPinη=Pin​Pout​​。重要性:高效率意味着更少的能量损失和更好的热管理,对于便携式设备、电动汽车等应用至关重要。挑战开关损耗:高频操作带来的开关器件损耗。导通损耗:电流流过电阻性元件(如MOSFET导通电阻)造成的能量损失。控制策略:优化控制算法以减少损耗。首先明确要模拟的任务内容。设计一个能够支持特定输入输出电压比的DC-DC变换器。根据工作频率和谐振元件值确定合适的电路参数。

xiaoheshang_123的博客 155

区间染色问题

区间染色问题:是指在给定的区间内多次进行染色,染色顺序靠后的可以覆盖前面的颜色,问最终区间会被染成多少种颜色. 下面给出Byvoid大牛出的一道模拟题,题目数据量极大,很难使用一般的思路AC掉。 题目描述: 自从诺莫瑞根陷落以后,侏儒们一直寄居在铁炉堡中。大机械师卡斯派普花了不少钱来悬赏勇士们去诺莫瑞根替他取回一些卡片,现在他已经有了一大堆彩色穿孔卡片。但是这些卡片都是残缺不全的,有的甚...

weixin_30655569的博客 824

游戏大厂状态同步与帧同步技术全解析——让虚拟世界万物协同的“时间齿轮”

本文深入解析了大厂游戏开发中的两种核心同步技术:状态同步和帧同步。状态同步适合大型MMO和FPS游戏,由服务端计算并广播世界状态;帧同步则通过统一操作输入实现MOBA和RTS游戏的绝对公平。文章详细比较了两者的差异、适用场景和底层实现原理,并揭秘了《王者荣耀》《PUBG》等热门游戏的同步机制。同时探讨了本地预测、延迟补偿、防作弊等关键技术,以及未来AI和云游戏带来的同步新挑战,为开发者提供了全面的技术参考和实践指南。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 918

区间染色

给定一个长度为n(n <= 100000)的木板,支持两种操作:   1、P a b c 将[a, b]区间段染色成c;   2、Q a b 询问[a, b]区间内有多少种颜色;   保证染色的颜色数少于30种。 思路: 因为颜色种类少于30,因此可以用int型整数来表示所有颜色,每一个比特代表一种颜色,颜色从0开始。 #include <iostr...

brucehb的专栏 1462

osgEarth 球上显示地形数据库

osgEarth 球上显示地形数据库 本文展示了一种由DSM和DEM得到Osgb工程,并在osgEarth球上显示的方法。其中DSM、DOM到Osgb工程的转换由VPB(VirtualPlanetBuilder)来实现,并采用Model图层将Osgb工程在球上显示。 本文主要解决一下问题: VPB编译 VPB生成地形 地形在球上显示 目录 1 前言 2 VPB编译与使用 3 地形在osgEarth球上显示 内容 1 前言 VirtualPlanetBuilder是一个开源代码工具,用于根据

CPWWHSU的博客 2433

SentEval学习笔记

SentEval allows you to evaluate your sentence embeddings as features for the followingdownstreamtasks: Task Type #train #test needs_train set_classifier MR movie review(影评) 11k 11k 1 1 CR product review(产品评述) ...

AlphaFinance 803

并查集解决区间染色(经典模型)

将fa[i]定义为第i个点的左边第一个未被染色的点(包括自己定义两个并查集father数组lfrflf[i]:一个包含点i的相同颜色区间的左端点rf[i]:一个包含点i的相同颜色区间的右端点定义cosumcol数组cosum[i]:颜色为i的节点数量col[i]i点的颜色(如果不是相同颜色区间的左或右端点,则col[i]无效。

probable__的博客 717

【工具插件类教学】Unity翻书效果插件Book-Page Curl Pro教程

特征: • 从左到右和从右到左翻页 • 与画布缩放器 配合使用 • 可配置的自动翻转脚本 • 支持向页面 添加 UI 元素 • 支持透明页面 • 适用于“世界空间”画布

纯技术流日常开发商业开发记录总结等 3672

区间染色——kuagnbin线段树专题(3)

本来是把区间染色放到第一次总结的,但是后来才发现自己对区间染色并没有那么熟练,所以特意提取出来总结一遍。 区间染色的查询主要有两种:一种是直接询问[L,R]之间的颜色种类,还有就是对每个颜色有一定的权值,求[L,R]之前的权值和 HDU 1698 Just a Hook P2161 [SHOI2009]会场预约 第一道题就是根据颜色的权值求区间和,第二种就是询问颜色种类个数 写第一道题的时候几乎是...

qq_37087993的博客 353

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

洛谷P2161 [SHOI2009]会场预约 线段树染色

题目链接:https://www.luogu.com.cn/problem/P2161 本题有好多做法,什么平衡树呀,STL呀,无奈蒟蒻的我只能用线段树染色来做。 每次A操作,把一个区间给染色了,如果那个区间之前被染色过,就要被删除,这里我们不直接删除,而是用 del数组 标记一下该颜色已被删除即可。我们需要在标准区间更新线段的基础加上一个 update 函数,当我们要染色的区间包含了当前区间,就...

hhhcbw的博客,欢迎各位来访 218

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

P2161 [SHOI2009]会场预约 - 线段树染色

是真的染色,把不同预约看做不同颜色,现在问题就是一个区间内不同颜色的数量,这个分块线段树都能做吧(不考虑复杂度用莫队也行) 注意,线段树的最大边界必须是定值,不能随输入改变(一开始懒得离线动态更新右端点然后节点的编号就串了) 注意数组大小,因为same和tag数组都是针对线段树节点设置的,所以其数组大小也要开4倍 #include <algorithm> #include &...

alc8278的博客 148

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

题解 luoguP2161 【[SHOI2009]会场预约】

线段树好题 。 转换题意。将操作看成染色:操作AAA,即统计一段区间内颜色的种类数,并将这个区间修改为同一个颜色。操作BBB,统计整颗线段树上还剩下多少种颜色。 考虑如何用线段树实现这一操作:对于操作AAA,明显就是一个查询−&amp;amp;amp;gt;-&amp;amp;amp;gt;−&amp;amp;gt;覆盖的操作。对于查询,考虑在修改时进行查询。我们用一个col[k]col[k]col[k]数组维护一段区间的颜色是否为同一个。若为...

lxy超超超级大蒟蒻的博客 232

luogu2161 SHOI2009 会场预约

题目 题目描述 PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地。这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突。 也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前。所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相冲突的预约。 一般来说,如果PP大厦方面事先已经接受了一个会场...

banlianbi6499的博客 194

[SHOI2009]会场预约 [线段树 染色][STL set]

P2161[SHOI2009]会场预约 这个题我xio到了好多东西QAQ 线段树 染色 可以看这个大佬的题解瓜打了一会儿 发现自己完全不会QAQ 然后学到了线段树染色这一方法 col数组表示这段区间的颜色是否相同 0为不同 1为相同 del记录这种颜色是否被删掉 然后在后面的操作中搞它! tag记录的区间颜色 QAQ发现我基础真的不牢 啥都没搞清楚:下传操作的进行,是因为当前区间...

weixin_30588729的博客 118

洛谷P2161 线段树染色 SHOI2009 会场预约

题目链接:https://www.luogu.org/problem/P2161 题意:有两种操作,操作A是在区间l,r上染色,同时把输出那些与之重叠的颜色的个数并情空,操作B是统计区间目前还有多少种颜色。 分析:用线段树来做,只用到区间修改,每次修改时都找到只有一种颜色的区间,如果这个颜色还没被删除,就计数并删除。删除可以直接用一个del数组来实现 #include<b...

weixin_30304375的博客 157

P2161 [SHOI2009]会场预约

线段树染色题 #include<bits/stdc++.h> using namespace std; const int maxn = 1e5 + 5; char s[5]; int ans, tmp, col; int del[maxn*2]; struct node{ int l, r, tag, v; } tree[maxn*4]; void build(int k,int...

kkjy_00的博客 152

洛谷 P2161 [SHOI2009]会场预约 stl/线段树

题目链接 一:stl大法好; 考虑把有重合部分的区间重载成相等的,然后利用set去重的性质来做; (如果不是手动实现,还真不知道set去重的时候是有选择性的去重,并不是去掉跟插入的那个相等的值,也有直接可能去掉你插入的值,挥泪,不了解实现方法的stl不要直接用qwq) 另外,这个想法贼nb啊(来自洛谷题解)%大佬 #include <bits/stdc++.h> using...

暖心的博客 285

【题解】洛谷P2161 会场预约(线段树)

先说一下这道题的解题思路,我们使用离线操作的做法。记录读入的数据,把开始结束日期存在结构体里,并记录是A操作还是B操作。开一个数组记录染色情况、一个cnt数组记录第几个操作推掉了几个预约,读入后我们倒着循环进行查找,如果读入的是B就跳过,如果是A的话就将开始到结束日期的所有点染成当前序号的颜色。如果循环到某段日期它已经有染色标记了,就将当前那段日期所对应的的染色标记的最小值的推掉的预约数+1(因为...

Rem_Inory的博客 361

数据结构专题qvq

luogu P1198 [JSOI2008]最大数 传送门:https://www.luogu.org/problemnew/show/P1198 由于每次只在最后加数我们就考虑一个神奇的动态反向ST表XD #include &lt;iostream&gt; #include &lt;algorithm&gt; #include &lt;cstdio&gt; #include &lt;cs...

南瓜の大水库 366

树状数组简介:高效数据处理利器

这篇文章主要是介绍树状数组,及其一些应用场景。其实树状数组更多时候是作为一种工具以便捷维护、查询数据在使用而非思路。所以我给的几种情形只是树状数组和各种思路的结合,比如树状数组和动态规划,树状数组和离线。在学习树状数组的时候更多的是要注意在实现什么目标的时候可以使用它来达到便利,减小时间复杂度。最后再放一道离散化+树状数组的例题在这,等后面把点分治整理好了再写题解P4178 Treex+=1;for(;x<=k+1;int sum=0;x+=1;

2501_92638822的博客 783
上一篇: P2023 维护序列(线段树标记,乘法和加法标记)
下一篇: CCF 2016-4-4 游戏(bfs标记)
Link_Ray
博客等级 码龄9年 44粉丝 156原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值