随笔分类 -  分块

摘要:2724: [Violet 6]蒲公英 Description Input 修正一下 l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1) mod n + 1 修正一下 l = (l_0 + x - 1) mod n + 1, r = (r_0 + x - 1 阅读全文
posted @ 2018-03-13 23:30 zbtrs 阅读(169) 评论(0) 推荐(0) 编辑
摘要:给出一个长为n的数列,以及n个操作,操作涉及区间询问等于一个数c的元素,并将这个区间的所有元素改为c。 样例输入 4 1 2 2 4 1 3 1 1 4 4 1 2 2 1 4 2 样例输出 1 1 0 2分析:对于每一个块维护一个覆盖标记. 如果这个块被完整的覆盖了,标记记录的就是对应覆盖的值,否 阅读全文
posted @ 2018-03-13 20:53 zbtrs 阅读(151) 评论(0) 推荐(0) 编辑
摘要:给出一个长为 n 的数列,以及 n 个操作,操作涉及区间开方,区间求和。 样例输入 4 1 2 2 3 0 1 3 1 1 1 4 4 0 1 2 2 1 1 2 4 样例输出 6 2分析:这道题没办法维护整块的信息,必须要知道每一个元素具体是多少才行. 开方的一个性质:2 ^ 32内的数最多经过6 阅读全文
posted @ 2018-03-13 13:42 zbtrs 阅读(128) 评论(0) 推荐(0) 编辑
摘要:给出一个长为n的数列,以及n个操作,操作涉及区间加法,询问区间内小于某个值c^2的元素个数。 样例输入 4 1 2 2 3 0 1 3 1 1 1 3 2 1 1 4 1 1 2 3 2 样例输出 3 0 2分析:复习了一下分块. 对于修改操作,在整块外的直接暴力修改,否则给每个块维护一个修改标记. 阅读全文
posted @ 2018-03-12 23:13 zbtrs 阅读(174) 评论(0) 推荐(0) 编辑
摘要:2002: [Hnoi2010]Bounce 弹飞绵羊 Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵羊达到第i个装置时 阅读全文
posted @ 2018-01-21 20:00 zbtrs 阅读(203) 评论(0) 推荐(0) 编辑
摘要:两个操作,1是询问[l,r]颜色的数量,2是交换p,p+1位置的颜色. 阅读全文
posted @ 2017-11-10 17:42 zbtrs 阅读(188) 评论(0) 推荐(0) 编辑
摘要:分析:高级数据结构学傻了.....一眼看上去觉得是莫队,发现带修改,于是分块,由于写的常数很大,只有70分. 正解很简单,记录下颜色为c的每只兔子的位置,每次二分找这个区间有多少只这种颜色的兔子就可以了,交换操作就交换位置,颜色.可能会存不下,所以用vector. 70分分块: 正解: 阅读全文
posted @ 2017-11-05 23:35 zbtrs 阅读(288) 评论(0) 推荐(0) 编辑
摘要:分析:对于前30%的数据直接暴力模拟即可,对于另外30%的数据,因为每次的p是一样的,所以可以用莫队来维护,先离散化一下,再用一个桶统计次数. 100%的做法和之前做过的一道模拟赛题很像,当模数很小的时候分块,否则就暴力修改.其实看到区间操作第一感觉是线段树,但是线段树并不能维护这个,分块维护的信息 阅读全文
posted @ 2017-10-31 23:15 zbtrs 阅读(228) 评论(0) 推荐(0) 编辑
该文被密码保护。
posted @ 2017-10-30 10:11 zbtrs 阅读(8) 评论(0) 推荐(0) 编辑