Jessius的博客

blog.jessun.me

BZOJ 1208, 宠物收养所

编写一个支持插入、删除元素,查询数列中最接近某值的元素的数据结构。 保证没有重复元素存在出现在树中。Treap和Splay都可做。 Splay苦手选择Treap,然而写得奇丑无比。 查询最接近某值的元素可以将该值插入树中查询前驱与后继,后比较。查询完以后再删掉。

2016-09-27 20:46:38

阅读数:112

评论数:0

BZOJ 2049, 洞穴勘测

要求编写一个数据结构,支持动态连边、删边和查询两点连通性。 保证两点间最多只有一条路径。 LCT模板题。 (其实并查集更好些?) 借这题大致了解了一下LCT,顺便回顾了一下Splay。 LCT里的Splay略有不同于普通的Splay,也是需要特别注意的。参考资料:Yang Zhe《SPOJ...

2016-09-27 06:43:45

阅读数:124

评论数:0

BZOJ 1012, 最大数

编写一个支持查询末尾L个数中最大数和在数列末尾插入的数据结构。 乍一看觉得得写Splay,其实只是利用单调性就可以解决了。 当然这题做法很多,线段树什么的都可搞。 开两个数组,一个作为栈,一个记录栈中元素在数列中的位置。 每新加一个数字,就将栈顶小于它的元素弹出后加入栈(因为若栈顶元素小于新数...

2016-09-11 19:20:09

阅读数:114

评论数:0

BZOJ 1500, 维修数列

编写一个支持插入、删除、修改、翻转、求和以及求和最大子序列的数据结构。Splay无疑。 但是写太丑也是会TLE的,比方说插入的时候应该以建树的形式插入,而不是一个点一个点的形式。 实现起来要注意的细节很多,对练习打Splay挺有好处。 (陆陆续续调试了好多天,总算在崩溃之前AC了……)

2016-09-11 15:51:46

阅读数:71

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭