luogu2161 [SHOI2009]会场预约】的更多相关文章

Solution 线段树维护 sum 表示区间内预约个数, L 表示区间最左边的预约, R 表示区间最右边的预约. $pushup$ 就是这样 : void up(int nd) { sum[nd] = sum[lson] + sum[rson] - (R[lson] == L[rson] && R[lson]); L[nd] = L[lson]; R[nd] = R[rson]; } 每次查询答案类似于$pushup$. 考虑把旧预约删去 : 若该次新预约 开始时间为$l$, 结束时间为…
题目大意 随着时间的推移这里有几个任务对应着一段区间.每次要将任务安到时间线上时,要把时间线上已有的与该任务对应区间有交集的区间对应的任务删去.求每次删去的区间个数,以及整个时间线上有几个任务.时间线长度m<=100000,任务个数n<=200000 题解 对于一个新加入的区间,我们要从右往左枚举每一个左端点小于等于新区间右端点的任务,直到枚举到了一个任务其右端点小于新任务的左端点.对于每一个要枚举到的任务,我们要尽可能缩小找到它的时间复杂度.于是建立一个权值树状数组,key值时间,值是左端点…
[题解][P2161 SHOI2009]会场预约 题目很像[[题解]APIO2009]会议中心 \(set\)大法好啊! 然后我们有个小\(trick\)(炒鸡帅),就是如何优雅地判断线段交? struct E{ int l,r; E(int a,int b){l=a,r=b;} inline bool operator <(const E&a)const{return r<a.l;} }; 真的太帅了!!我思维不行啊!!别人太强了! 众所周知,只要知道一个小于号,就知道所有的逻辑运算…
题面 传送门:https://www.luogu.org/problemnew/show/P2161 Solution splay 的确有线段树/树状数组的做法,但我做的时候脑残没想到 我们可以考虑写一个类似NOIP2017D2T3列队那道题那样的带分裂的平衡树 考虑用splay维护每一条线段的左端点和右端点 因为我们题目的意思保证了在平衡树里的线段不相交,所以我们可以考虑以下的性质 每一条线段作为一个点放入平衡树中,维护其L,R,并记录它是空白线段还是有预约的线段 我们要查询一段区间,设这个区…
2021.12.08 [SHOI2009]会场预约(平衡树游码表) https://www.luogu.com.cn/problem/P2161 题意: 你需要维护一个 在数轴上的线段 的集合 \(S\),支持两种操作: A l r 表示将 \(S\) 中所有与线段 \([l,r]\) 相交的线段删去,并将 \([l,r]\) 加入 \(S\) 中. B 查询 \(S\) 中的元素数量. 对于 A 操作,每次还需输出删掉的元素个数. 分析: 对于这道题,我先想到了珂朵莉树(毕竟这个名字太深入人心…
Description PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地.这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突.也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前.所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相冲突的预约. 一般来说,如果PP大厦方面事先已经接受了一个会场预约,例如从10日到15日,就不会在接受与之相冲突的预约,例如从12日到17日.不过,有时出于经济利益,PP大厦方面…
Time Limit: 20 Sec  Memory Limit: 64 MBSubmit: 425  Solved: 213[Submit][Status][Discuss] Description PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地.这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突.也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前.所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相…
题目描述 PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地.这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突.也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前.所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相冲突的预约. 一般来说,如果PP大厦方面事先已经接受了一个会场预约,例如从10日到15日,就不会在接受与之相冲突的预约,例如从12日到17日.不过,有时出于经济利益,PP大厦方面有时会为了接受…
题目描述 PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地.这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突.也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前.所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相冲突的预约. 一般来说,如果PP大厦方面事先已经接受了一个会场预约,例如从10日到15日,就不会在接受与之相冲突的预约,例如从12日到17日.不过,有时出于经济利益,PP大厦方面有时会为了接受…
题目描述 PP大厦有一间空的礼堂,可以为企业或者单位提供会议场地.这些会议中的大多数都需要连续几天的时间(个别的可能只需要一天),不过场地只有一个,所以不同的会议的时间申请不能够冲突.也就是说,前一个会议的结束日期必须在后一个会议的开始日期之前.所以,如果要接受一个新的场地预约申请,就必须拒绝掉与这个申请相冲突的预约. 一般来说,如果PP大厦方面事先已经接受了一个会场预约,例如从10日到15日,就不会在接受与之相冲突的预约,例如从12日到17日.不过,有时出于经济利益,PP大厦方面有时会为了接受…