自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(4)
  • 收藏
  • 关注

原创 带修莫队

顾名思义,带有修改的莫队。 莫队是一个离线算法,如果用强制在线的问题就不用考虑莫队了(可以树树树?)。 如果用莫队算法求解,必须离线,先把查询操作和修改操作分别记录下来。记录查询操作的时候,增加一个变量,记录本次查询前做了多少次修改。 加上时间轴的带修改莫队 如果没有修改,就是基础莫队,一个查询的左右端点是[L,R][L, R][L,R]。加上修改之后,一个查询表示为(L,R,t)(L, R, t)(L,R,t),ttt表示在查询[L,R][L, R][L,R]前进行了ttt次修改操作。可以把t理解为“时间

2020-09-19 11:45:09 2123

原创 普通莫队

莫队算法 = 离线 + 暴力 + 分块 莫队算法的排序:把数组分块(分成n\sqrt nn​块),然后把查询的区间按左端点所在块的序号排序,如果左端点的块相同,再按右端点排序。这样可以使每个查询的点距离最短(具体用几何方法曼哈顿距离可以简单证明) 注意:莫队算法针对的是离线处理询问区间,是一种用分块优化暴力使得最快处理所有询问区间的办法。 例题:HH的项链 这道题洛谷分块过不了,只能用树状数组才能过 #include <bits/stdc++.h> using namespace std; co

2020-09-18 21:08:59 99

原创 教主的魔法 【分块】

教主的魔法 分块模板题 每一个M操作就是区间修改+暴力修改,每一个A操作就是区间查询,(A正解能用主席树,但是分析数据范围之后发现分块就够了)。 分析之后发现M操作就是分块基本操作,直接按照整区间内的数直接整块修改,不是整区间内的数暴力修改(也就是分块最重要的思想)来操作即可。 但是看到A操作发现直接查询时间复杂度会炸掉,于是考虑如何优化。发现如果区间内每个数都是有序的那么查询直接二分即可,则想到再引入一个数组b进行有序化原数组的操作,对于每一次修改,都对b进行一次更新加重新排序操作,然后直接在b数组上查询

2020-09-11 20:37:20 136

原创 HDU5821 Ball

HDU5821 Ball 【问题描述】 有 n 个盒子编号 1~n,第 i 个盒子里的球的颜色为 ai(如果 ai=0 则表示没有球)。 有 m 次操作,这 m 个操作依次进行,第 i 次操作有两个参数 li ,ri,表示你可以将区 间[li,ri]内的球全部取出后,再按你的意愿放回到区间[li,ri],同时保证一个盒子内每时 每刻最多只有一个球。 求是否存在一种方法,使得依次进行这 m 次操作后,第 i 个盒子里的球的颜色为 bi。 显然,给每个球一个标号,由于是对于每个区间任意放球,那么必定有一

2020-09-06 19:40:57 662

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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