09 2017 档案
[BZOJ1269]文本编辑器editor
摘要:Problem 有n个操作 Solution splay模板题,用splay维护下标。 Notice 需要把l的前一个位置旋转到根,r的后一个位置旋转到根的右节点。所以特别要注意0的大坑。 Code 阅读全文
posted @ 2017-09-30 15:38 WizardCowboy 阅读(130) 评论(0) 推荐(0)
[BZOJ1208]宠物收养所
摘要:Problem 给你一个宠物或是领养者的特点值。 若是领养者的特点值为a,有宠物的特点值为b,那么他会领养abs(a b)最小的值。(如果有a+k和a k,那么优先领养a k) 同理,若是宠物的特点值为a,有领养者的特点值为b,那么它会被abs(a b)最小的值的领养者领养。(如果有a+k和a k, 阅读全文
posted @ 2017-09-30 08:34 WizardCowboy 阅读(132) 评论(0) 推荐(0)
[BZOJ1588]营业额统计
摘要:Problem 每次给你一个数,找出前面的数与这个数的差的绝对值的最小值 Solution Splay Notice 找不到前驱和后继时,会出错。 Code C++ include include include include include using namespace std; define 阅读全文
posted @ 2017-09-29 20:50 WizardCowboy 阅读(152) 评论(0) 推荐(0)
[BZOJ3224]普通平衡树
摘要:Problem 有以下操作 1. 插入x数 2. 删除x数(若有多个相同的数,因只删除一个) 3. 查询x数的排名(若有多个相同的数,因输出最小的排名) 4. 查询排名为x的数 5. 求x的前驱(前驱定义为小于x,且最大的数) 6. 求x的后继(后继定义为大于x,且最小的数) Solution 裸的 阅读全文
posted @ 2017-09-29 20:25 WizardCowboy 阅读(145) 评论(0) 推荐(0)
[AtCoder2558]Many Moves
摘要:Problem 共有n个格子,有两个硬币在a,b格子上,还有q个操作。 每个操作给你一个编号,要求将一个硬币移到这个编号上。 问你硬币移动的总距离最小值。 Solution O(n^3):DP[i][a][b]表示i个操作后,1个硬币在a,一个硬币在b的总距离最小值。 O(n^2):DP[i][b] 阅读全文
posted @ 2017-09-29 20:19 WizardCowboy 阅读(276) 评论(0) 推荐(0)
[POJ3416]Crossing
摘要:Problem 给你n个点,m个询问,每个询问有x, y 问以(x,y)为原点建立的平面直角坐标系分割的第一象限和第三象限的点数和减去第二象限和第四象限的点数和 Solution 用2个树状数组维护一条竖直的线的左右两边的点的分布情况 然后对x轴排序,把一个点从右边的树状数组中拿出,放到左边去(相当 阅读全文
posted @ 2017-09-28 21:00 WizardCowboy 阅读(183) 评论(0) 推荐(0)
[POJ3378]Crazy Thairs
摘要:Problem 给你一个数列,让你求由五个元素组成的顺序对的个数。 Solution DP:用DP[i][j]表示把第j个作为五元组中第i个的方案数 则DP[i][j]=sum{DP[k][j 1]} (k include include include include using namespac 阅读全文
posted @ 2017-09-28 20:53 WizardCowboy 阅读(133) 评论(0) 推荐(0)
高精度大整数模板
摘要:Code 阅读全文
posted @ 2017-09-28 09:00 WizardCowboy 阅读(142) 评论(0) 推荐(0)
[ZHOJ1956]vfk的地雷
摘要:Problem 共有n个地雷,r句话 1如果这个地雷在之前中已经被触发过,则 1.1如果这个地雷不是最后一个,则跳过之(考虑下一个地雷); 1.2否则(是最后一张),结束这一句话,考虑下一句。 2否则(这个地雷没有被触发),设这个地雷为第i个 2.1将其以 pi的概率触发。 2.2如果地雷被触发,则 阅读全文
posted @ 2017-09-27 20:23 WizardCowboy 阅读(180) 评论(0) 推荐(0)
[ZHOJ1955]lj的锁
摘要:Problem 平面上有一排n个点 ,为A1,A2··· An。 然后m个询问,每个询问两个数a,l表示a处挂一条长度为l的绳子。 这条绳子一直不停的绕,问最后绕着哪个点转。(刚落在一个点上,则就是这个点) Solution 用一个dfs不停的搜。然后对于剩余长度,二分找到下一个绕上的点。 可以优化 阅读全文
posted @ 2017-09-27 20:16 WizardCowboy 阅读(226) 评论(0) 推荐(0)
[ZHOJ1954]lyd的旅行
摘要:Problem 给出一个初始速度v1,结束速度v2,时间t以及每个单位时间速度的最大变化量。 求t个单位时间内的最大行驶距离。 Solution 我们可以发现,肯定是最先开始尽量加速度,最后在减下来,这样的方案才是最优的。 1.可以O(n)求出加速度,减速度,然后找到临界点计算时间。 2.可以O(1 阅读全文
posted @ 2017-09-27 19:51 WizardCowboy 阅读(371) 评论(0) 推荐(1)