04 2017 档案
摘要:题目大意 有n种物品,m种建筑,p个人。 n,m,p∈[1,20] 每种建筑需要若干个若干种物品来建造。每个人打算建造一种建筑,拥有一些物品。 主角需要通过交易来建造自己的建筑,交易的前提是对方用多余的物品来换取自己需要的物品。 询问主角是否能建造成功自己的建筑,并给出方案。 解题分析 超级恶心的读
阅读全文
摘要:Problem 平衡树 SBT 题目大意 维护一个序列,支持两种操作。 操作一:插入一个数。 操作二:询问第k小的数。 解题分析 ~~刷刷水题,再熟悉一下splay的基本操作。 ps:哇咔咔,有连续四天的假期了,好开心~~ 参考程序 1 #include <bits/stdc++.h> 2 usin
阅读全文
摘要:Problem 平衡树 splay2 题目大意 维护一个序列,支持四种操作: 操作1:添加一个数,编号为x,权值为y。 操作2:删除编号在区间【x,y】内的数。 操作3:将编号在区间【x,y】内的数的权值增加为z。 操作4:询问编号在区间【x,y]内的数的权值和。 解题分析 由于增加了区间加和区间查
阅读全文
摘要:Problem 平衡树 Splay 题目大意 维护一个数列,支持三种操作。 操作1:添加一个数x。 操作2:询问不超过x的最大的数。 操作三:删除大小在区间【a,b】内的数。 解题分析 和上一题相比,多了一个删除的操作。 首先将a的前驱节点x旋转到根,然后将b的后驱节点y旋转到x的右孩子,这样所有大
阅读全文
摘要:Problem 平衡树 Treap 题目大意 维护一个数列,支持两种操作。 操作1:添加一个数x。 操作2:询问不超过x的最大的数。 解题分析 尝试了一下用指针来写splay,感觉写起来还是比较流畅的,不过用指针的时候还是需要注意一些小细节,要防止对空指针进行赋值。 之后继续把指针版splay的各种
阅读全文

浙公网安备 33010602011771号