摘要: Link: 传送门 A: 由于每个颜色只染色一次就确定了所有要染色的区间 要求染色的次数其实就是求区间最多嵌套多少层,如果有区间相交则无解 以上操作明显可以将左端点排序后用栈来维护 #include <bits/stdc++.h> using namespace std; #define X fir 阅读全文
posted @ 2018-09-13 09:46 NewErA 阅读(200) 评论(0) 推荐(0)
摘要: Link: 传送门 A: 分层图最短路(其实就是最短路转移时多记录一维的数据 #include <bits/stdc++.h> using namespace std; #define X first #define Y second typedef double db; typedef long 阅读全文
posted @ 2018-09-13 09:28 NewErA 阅读(251) 评论(0) 推荐(0)
摘要: Link: BZOJ 1500 传送门 Solution: 可能平衡树维护序列的所有操作都在这了吧…… 对序列的维护$fhq treap$和$Splay$都能做 有几个注意点: 1、维护序列时始终记得第$k$大指的是序号,与权值无关 2、注意对0的初始化,毕竟如果无叶子结点时会用到 3、如果数据总量 阅读全文
posted @ 2018-09-13 09:13 NewErA 阅读(356) 评论(0) 推荐(0)
摘要: Link: BZOJ 1208 传送门 Solution: 求前驱后继,很明显的平衡树操作 其实$set$完全可以做,主要是为了复习下$Treap$结果调了好久…… 注意:在写平衡树删除时一定要记得考虑删除数不存在的情况 特别是$Treap$,如果访问到空要直接返回否则死循环…… Code: 阅读全文
posted @ 2018-09-13 09:13 NewErA 阅读(196) 评论(0) 推荐(0)
摘要: Link: 传送门 A: 按值大小插入后用树状数组统计两边个数 #include <bits/stdc++.h> using namespace std; #define X first #define Y second #define pb push_back typedef double db; 阅读全文
posted @ 2018-09-13 09:13 NewErA 阅读(202) 评论(0) 推荐(0)