随笔分类 -  The way——莫队算法

摘要:BZOJ题表(21/139) 阅读全文
posted @ 2019-01-26 11:49 Star_Feel 阅读(676) 评论(0) 推荐(0) 编辑
摘要:闲谈: 最后一个星期还是不浪了,做一下模拟赛(还是有点小虚) #30.candy 题目: 有一个人想买糖吃,有两家商店A,B,A商店中第i个糖果的愉悦度为Ai,B商店中第i个糖果的愉悦度为Bi 给出n,W,表示每个商店都有n个糖果且两个商店的每个糖果的价格都是W 求出最大的min(Sa,Sb)-D* 阅读全文
posted @ 2018-11-06 16:30 Star_Feel 阅读(867) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ5016】 简要题意: 给出n个数,q个询问,每个询问输入l1,r1,l2,r2,输出x=0get(l1,r1,x)get(l2,r2,x) 其中get(l,r,x)表示l到r中x出现的次数 题解: 看这范围也是要离线的了,莫队搞一波 假设x已经确定 阅读全文
posted @ 2018-05-04 09:05 Star_Feel 阅读(272) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ5301】 简要题意: 给出长度为n的序列,给出m个询问,并给出k,每个询问输入l,r 每个询问输出l到r的序列中的所有子串中的异或和为k的子串数量 题解: 莫队 异或,真是个神东西 首先异或和满足前缀,也就是说设sum[i]为a[1]^a[2]^...^a[i],那么a[i]^a 阅读全文
posted @ 2018-04-19 08:54 Star_Feel 阅读(765) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ4540】 简要题意: 给出长度为n的序列,给出m个询问,每个询问输入l,r 每个询问输出l到r的序列中的所有子串中的最小值的和 题解: 莫队+RMQ+乱搞 太烦了,搞了三个小时,不想写题解了 orz 参考代码: 阅读全文
posted @ 2018-04-18 21:13 Star_Feel 阅读(237) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3339】 简要题意: 给出一个长度为n的数列,有m个询问,每个询问输入l,r,求出l到r之间没出现过的最小自然数 题解: 同BZOJ3585 参考代码: 阅读全文
posted @ 2018-04-08 11:32 Star_Feel 阅读(162) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3585】 简要题意: 给出一个长度为n的数列,有m个询问,每个询问输入l,r,求出l到r之间没出现过的最小自然数 题解: 莫队+权值分块 只要处理每一个权值块总共出现多少种数,每当找到一个权值块出现的种数不等于总共的种数,就直接在这个块里找哪个没出现过就行了 参考代码: 阅读全文
posted @ 2018-04-08 11:08 Star_Feel 阅读(327) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ2453】 简要题意: 有n个数,有m种操作: 1.Q l r求出l到r中共有多少种不同的数 2.R x c将第x个数改为c 题解: 同BZOJ2120 参考代码: 阅读全文
posted @ 2018-03-14 20:41 Star_Feel 阅读(226) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ2120】 简要题意: 有n个数,有m种操作: 1.Q l r求出l到r中共有多少种不同的数 2.R x c将第x个数改为c 题解: 带修莫队例题 具体请膜大米饼 参考代码: 阅读全文
posted @ 2018-03-14 20:37 Star_Feel 阅读(228) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ4810】 简要题意: 给出n个数,给出m种询问: 1 l r x判断是否在区间l到r中能选出两个数的差为x 2 l r x判断是否在区间l到r中能选出两个数的和为x 3 l r x判断是否在区间l到r中能选出两个数的乘积为x 其中选出的两个数可以相等 题解: 肯定得离线 用莫队吧 阅读全文
posted @ 2018-03-12 21:09 Star_Feel 阅读(188) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3236】 简要题意: 给出一个n个数的序列,序列中的数范围为1到n,给出m个操作,每个操作输入l,r,a,b,输出l到r中权值为a到b的数的个数和l到r中权值为a到b的数的种类 题解: BZOJ3809的添加版,其实差不多 只是在BZOJ3809的做法上多加一个求个数和的数组就可 阅读全文
posted @ 2018-03-06 13:57 Star_Feel 阅读(196) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3809】 简要题意: 给出一个n个数的序列,序列中的数范围为1到n,给出m个操作,每个操作输入l,r,a,b,输出l到r中权值为a到b的数的种类 题解: 肯定不能在线求,离线就用莫队 一开始想法是用树状数组维护权值总类,结果T了 旁边的lxj大佬D了我,说:这道题卡了树状数组,因 阅读全文
posted @ 2018-03-06 13:46 Star_Feel 阅读(275) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3289】 简要题意: 给出n个数,有m个询问,每个询问输入l,r,求出l到r中的所有数通过与相邻数交换变为上升序列的交换次数 题解: 一开始想用在线算法做 想不出来就用离线了 就想到用莫队 然后对于操作的继承,发现: ①在一列数的后面添加一个数,逆序对数会增加数列中比它大的数的个 阅读全文
posted @ 2018-03-04 20:08 Star_Feel 阅读(179) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ3781】 简要题意: 给出n个数a[i],有k种数,m个询问,每个询问输入l,r,输出ki=1c[i]2,c[i]表示数字i在l到r中出现的次数 题解: 莫队(非常明显) 直接分块,设sum[i]为当前l到r之间数字为i出现的个数,对于处理l和r的位置, 阅读全文
posted @ 2018-01-04 14:03 Star_Feel 阅读(145) 评论(0) 推荐(0) 编辑
摘要:【传送门:BZOJ2038】 简要题意: 给出n只袜子,每只袜子都有颜色 有多个询问,每次询问一个区间L,R,求出在这个区间内选出两只相同颜色袜子的概率,以最简分数形式输出(不用化成整数,如果概率为0,则输出0/1) 题解: 接触莫队第一题 我们先假设当前要询问的区间内第一种颜色的袜子有a只,第二种 阅读全文
posted @ 2017-12-21 20:02 Star_Feel 阅读(204) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示