Jessius的博客

blog.jessun.me

BZOJ 3224, 普通平衡树

编写一个支持插入、删除元素,查询元素排名,查询相应排名的元素,查询元素前驱与后继的数据结构。 有重复元素存在,且查询前驱后继的元素可能未出现在树中。 Treap和Splay都可做。 Splay随便搞一搞就可以了,然而没打过的我只会口胡…… 于是打了Treap。 重复元素可以选择在保存在同一节点中,...

2016-08-18 19:34:27

阅读数:154

评论数:0

BZOJ 2002, 弹飞绵羊

输入链上各弹力装置的弹力系数,要求支持修改弹力系数以及查询绵羊被弹几次后弹飞。 LCT可做,而且时间复杂度优。 分块虽然慢一些但是编程复杂度比较低。 两个数组cnt和nxt分别记录处于当前装置时被弹几次后弹出当前块以及弹到后面的什么位置。 分块对细节处理要求比较高,题目中也特别强调了装置编号为...

2016-08-14 11:18:26

阅读数:134

评论数:0

BZOJ 1001, 狼抓兔子

求平面图最小割。 数据范围太大导致直接跑最大流会TLE。 正确做法是平面图转对偶图,就可以把最小割问题转化成求最短路。 注意要特判n=1与m=1的情况。 参考资料:周冬2008年集训队论文《两极相通——浅析最大—最小定理在信息学竞赛中的应用》

2016-08-14 09:40:31

阅读数:109

评论数:0

BZOJ 1002, 轮状病毒

在一个n轮状基中删去若干条边,使得各点之间有且仅有一条通路。 递推公式 f[i]=f[i-1]*3-f[i-2]+2 正解是基尔霍夫矩阵,然而我并不知道这是什么东西……

2016-08-13 15:33:36

阅读数:168

评论数:0

BZOJ 1213, 高精度开根

输入一个正整数m(1≤m≤50)和一个整数n(0≤n≤10^10000),求开根后取整的结果。 二分+高精度+NTT 倍增地确定二分边界L,R; 由于n过大,高精度乘法不够快,所以需要用NTT来加速乘法(FFT比较慢,而且精度不够)。

2016-08-13 10:41:49

阅读数:1237

评论数:0

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