摘要:
补博客! 首先我们观察题目中给的那个求$ans$的方法,其实前两项没什么用处,直接$for$一遍就求得了 c for (int i=1;i include include include include include include include define mk makr_pair defi 阅读全文
posted @ 2018-12-22 18:23
y_immortal
阅读(157)
评论(0)
推荐(0)
摘要:
真是一个三倍经验好题啊。 我们来观察这个题目,首先如果直接整体计算,怕是不太好计算。 首先,我们可以将每个子串都看成一个后缀的的前缀。那我们就可以考虑一个一个后缀来计算了。 为了方便起见,我们选择按照字典序来一次插入每个后缀,然后每次考虑当前后缀会产生的新串和与之前插入的串重复的串(这里之所以可以这 阅读全文
posted @ 2018-12-22 18:23
y_immortal
阅读(134)
评论(0)
推荐(0)
摘要:
纪念卡常把自己卡死的一次自闭模拟赛 QWQ 一开始看这个题,以为是个图论,仔细一想,貌似可以直接dp啊。 首先,因为规则只有从两个变为1个,貌似可以用类似区间$dp$的方式来$check$一段区间能不能合成某一个字母! 那我们定义$f[i][j][k]$表示第一个串,$[l,r]$区间,是否可以合成 阅读全文
posted @ 2018-12-22 18:22
y_immortal
阅读(241)
评论(0)
推荐(0)
摘要:
真是一道良好的SA模板题 首先,由于涉及到从左边移动到右边这个过程,我们不妨直接把字符串复制一遍,接在后面。 然后直接构造后缀数组,按排名从小到大,枚举所有的位置,如果这个后缀的起始点是在原串中的,那么就输出当前后缀的起始点往后第n个字符,就能直接解决了 c include include incl 阅读全文
posted @ 2018-12-22 18:21
y_immortal
阅读(123)
评论(0)
推荐(0)
摘要:
其实SA这个东西很久之前就听过qwq 但是基本已经忘的差不多了 嘤嘤嘤 QWQ感觉自己不是很理解啊 所以写不出来那种博客 QWQ只能安利一些别人的博客了 小 老 板 真的是讲的非常好 ~~不要在意名字~~ orz,膜拜他们 顺便弄上自己的代码(里面有一些需要注意的地方) c include incl 阅读全文
posted @ 2018-12-22 18:21
y_immortal
阅读(195)
评论(0)
推荐(0)
摘要:
这是一道卡常好题 从160s卡到36s qwq 由于题目设计到原数组的单点修改,那么就对应着前缀和数组上的区间加。 很显然能想到用线段树来维护这么个东西。 那么该如果求题目要求的位置呢 我们来看这个题的式子,他要求$$a_i = s_{i 1}$$ 我们稍微变形一下$$s_i s_{i 1}=s_{ 阅读全文
posted @ 2018-12-22 18:19
y_immortal
阅读(311)
评论(0)
推荐(0)
摘要:
(嘤嘤嘤 又是一个自闭了一晚上的题) qwq果然不是平面上的点的问题,也可以直接用KDTree打暴力 我们对于巧克力直接建kdtree 维护一个$mx[i],mn[i]$ 但是有一个非常不友好的事情 我们貌似很难对这个东西进行一些实质上的剪枝 因为他求的是一个和的形式,而不是一个最值QWQ 那么该怎 阅读全文
posted @ 2018-12-22 18:19
y_immortal
阅读(170)
评论(0)
推荐(0)
摘要:
qwq(明明可以直接分治过掉的) 但是还是当作联系了 首先,对于这种点的题,很显然的套路,我们要维护一个子树$mx[i],mn[i]$分别表示每个维度的最大值和最小值 (这里有一个要注意的东西!就是我们$up$的时候,要判断一下当前是否还有左/右儿子) 其实剩下的就是和普通的kdtree差不多了 直 阅读全文
posted @ 2018-12-22 18:19
y_immortal
阅读(666)
评论(0)
推荐(0)
摘要:
真是一个自闭的题目(调了一个上午+大半个下午) 从$WA$到$WA+TLE$到$TLE$到$AC$ 真的艰辛。 首先,这个题,我们可以考虑直接上四维KDTree来解决。 对于kdtree上的每个节点,我们维护三个值,分别表示各个维度的$mn$,当前节点的$val$(这个是用来每次更新$ans$的), 阅读全文
posted @ 2018-12-22 18:18
y_immortal
阅读(307)
评论(0)
推荐(0)
摘要:
KD Tree这玩意还真的是有趣啊.... (基本完全不理解) 只能谈一点自己的对KD Tree的了解了。 首先这个玩意就是个暴力... 他的结构有点类似二叉搜索树 每一层都是以一个维度作为划分标准。 我们对于当前层,选择所有剩余点中,该维度比较中间的那个点作为基准点,比他小(这一维度)就放到左子树 阅读全文
posted @ 2018-12-22 18:17
y_immortal
阅读(537)
评论(0)
推荐(0)
摘要:
纪念博客又一次爆炸了 首先,对于本题中,我们可以发现,保证存在正整数解,就表示一定费用会降低。又因为一旦加大的流量,费用一定会变大,所以总流量一定是不变的 那么我们这时候就需要考虑一个退流的过程 对于原图每一条$u v,c 0$的边,我们在新图中建一条$v u,价值是a d$ 表示退这个流要花费的费 阅读全文
posted @ 2018-12-22 18:16
y_immortal
阅读(127)
评论(0)
推荐(0)
摘要:
QWQ神仙题啊(据说是今年第一次出现圆方树的地方) 首先根据题目,我们就是求对于每一个路径$(s,t)$他的贡献就是两个点之间的点数,但是图上问题我并没有办法很好的解决。。。 这时候考虑圆方树,我们将圆方树建出来之后, 我们令方点的权值是他所连接的圆点之和,圆点的权值是$ 1$。 这里之所以让圆点的 阅读全文
posted @ 2018-12-22 18:14
y_immortal
阅读(98)
评论(0)
推荐(0)
摘要:
QWQ果然我已经什么都学不会的人了。 这个题目要求的是图上所有路径的点权和!QWQ(我只会树上啊!) 这个如果是好啊 这时候就需要 圆方树! 首先在介绍圆方树之前,我们先来一点简单的前置知识 首先,我们需要知道什么是 点双联通分量 若一个无向图中的去掉任意一个节点都不会改变此图的连通性,即不存在割点 阅读全文
posted @ 2018-12-22 18:14
y_immortal
阅读(173)
评论(0)
推荐(0)
摘要:
QWQ深受其害 当时在现场是真的绝望...... 现在再重新来看这个题 QWQ 根据题目所说,我们可以发现,对于每一个集合中的节点,我们实际上就是要求两两路径上的割点的数目 考虑到又是关于点双的题目,而且在图上,我们并没有很好的办法去做。 这时候就要考虑建出来圆方树,然后我们对于圆方树 的每个点,维 阅读全文
posted @ 2018-12-22 18:14
y_immortal
阅读(165)
评论(0)
推荐(0)
摘要:
大概算是个系列整理 ~~(最强版是模拟赛原题))~~ 首先,我们先来看这个题目。 QWQ一开始是毫无头绪,除了枚举就是枚举 首先,我们可以枚举一个右端点,然后算一下当前右端点的答案 我们令$f[l,r]$表示$a_l到a_r$这些数,能够最少划分成几段连续的数。 显然,我们要求的是以每个端点为右端点 阅读全文
posted @ 2018-12-22 18:13
y_immortal
阅读(323)
评论(0)
推荐(0)
摘要:
真的是一个大好题啊! QWQ首先我们考虑这种问题,如果直接在线做,估计应该是做不了,那我们是不是可以直接考虑离线。 将所有询问都按照$r$来排序。 然后依次加入每条边,计算$a[i]=l$,后面这项表示$x y$的路径上最小的编号,要在他要求的$l$之后才行。 QWQ嘤嘤嘤 还有一个问题一定要注意! 阅读全文
posted @ 2018-12-22 18:12
y_immortal
阅读(159)
评论(0)
推荐(0)
摘要:
好久之前做的题了QWQ 现在来补一发博客 一道神仙题啊。。qwq 首先,我们可以看出来,我们如果对于每个点维护一个$val$,表示他的直系儿子中有几个表现为1的。 那么$val[x] 1$ 就是他反应的类型 这样十分便于我们计算一开始的$val$ 那么考虑修改。 一定是会修改一条$连续1(对应着0 阅读全文
posted @ 2018-12-22 18:12
y_immortal
阅读(171)
评论(0)
推荐(0)
摘要:
又一道好题啊qwqqqq 一开始看这个题,还以为是一个树剖的什么毒瘤题目 (不过的确貌似可以用树剖啊) qwq这真是一道$LCT$维护颜色的好题 首先,我们来一个一个操作的考虑。 对于操作$1$来说,我们是不是就相当于把$1~x$的路径,弄成一个独立的联通块? 哎,这个貌似是$access(x)$的 阅读全文
posted @ 2018-12-22 18:11
y_immortal
阅读(172)
评论(0)
推荐(0)
摘要:
QWQ硬是把一个$splay$好题,做成了$LCT$ 首先,根据题目性质,我们可以发现序列之间是具有前后性质的。 那么,我们就不可以进行$makeroot$等操作。 我们定义$findroot(x)表示x所在splay最前面的点(深度最小的点)$ $findymh(x)表示x所在splay最后面的点 阅读全文
posted @ 2018-12-22 18:07
y_immortal
阅读(169)
评论(0)
推荐(0)
摘要:
成功又一次自闭了 ~~怕不是猪国杀之后最自闭的一次~~ 一看到最短路径。 我们就能推测这应该是个最短路题 现在考虑怎么建图 根据题目的意思,我们可以发现,在本题中,边与边之间存在一些转换关系,但是点与点之间并不存在。 那么我们考虑 边转点,点转边。 每一条边拆成两个点,之间连边权的边 新建一个起点$ 阅读全文
posted @ 2018-12-22 18:03
y_immortal
阅读(192)
评论(0)
推荐(0)
摘要:
~~这题难道不是spaly裸题吗?~~ 言归正传QWQ 一看到这个题目,其实第一反应是很懵X的 从来没有见过类似的题目啊,什么$spaly$,单旋。QWQ很懵逼啊 不过,我们可以注意到这么一件事情,就是我们对于树中元素移动的时候,只会移动$min或者max$。 那么会不会有什么性质呢 QWQ 经过手 阅读全文
posted @ 2018-12-22 18:01
y_immortal
阅读(169)
评论(0)
推荐(0)
摘要:
题目大意: $给你n个数a_i,给定一个m,你可以选择一个区间[l,r],让他们区间加一个任意数,然后询问一次操作完之后,最多能得到多少个m$ QWQ 考场上真的 想了好久都不会,直到考试快结束才知道怎么做。 首先,根据题目,我们可以得知,假设我们修改了$[l,r]$这个区间,那么最后的$ans$就 阅读全文
posted @ 2018-12-22 17:59
y_immortal
阅读(179)
评论(0)
推荐(0)
摘要:
这可真是道神仙题QWQ问了好多$dalao$才稍微明白了一丢丢做法 首先,我们假设不存在$1$操作,那么对于询问的一段区间中的所有的树,他们的形态应该是一样的 甚至可以直接理解为$0$操作就是表示所有树的生成节点都添加一个儿子 其实就算存在$1$操作,也是类似同理的. 这样考虑: 考虑如果在 $l$ 阅读全文
posted @ 2018-12-22 17:59
y_immortal
阅读(219)
评论(0)
推荐(0)
摘要:
QWQ不得不说 $cf$的$edu\ round$出这种东西 有点太恶心了 题目大意:给你$n$个点,告诉你每个点的最大度数值(也就是说你的度数要小于等于这个),让你构造一个无向图,使其满足直径最大且包含所有点 一看就是个构造题 QWQ但是细节非常多。 大致上的思路就是,我们考虑把度数大于1的点拿出 阅读全文
posted @ 2018-12-22 17:58
y_immortal
阅读(228)
评论(0)
推荐(0)
摘要:
QWQ嘤嘤嘤 ~~感觉是最水的一道$G$题了~~ 顺便记录一下第一次在考场上做出来G qwqqq 题目大意就是说: 给你n个点,m条边,让你选出来一些边,最大化边权减点权 $n\le 1000$ QWQ 看完这个题和数据范围,第一感觉就是网络流啊QWQ首先,我们可以将一条边视为依赖于两个端点,也就是 阅读全文
posted @ 2018-12-22 17:58
y_immortal
阅读(123)
评论(0)
推荐(0)
摘要:
被$STL$坑害了一个晚上,真的菜的没救了啊。 准确的说是一个叫$reverse\ iterator$的东西,就是我们经常用的$rbegin()$ 有一个非常重要的性质 在反向迭代器中,++相当于正常的 , 相当于正常的++ 也就是说 假设我们要访问$set$中的倒数第二个元素,我们要$++s.rb 阅读全文
posted @ 2018-12-22 16:28
y_immortal
阅读(154)
评论(0)
推荐(0)
摘要:
貌似洛谷的题面是没有翻译的 QWQ 大致题面是这个样子,但是可能根据题目本身有不同的地方 完全懵逼的一个题(果然博弈论就是不一样) 首先,我们考虑把题目转化成一个可做的模型。 我们分别从$s$和$t$跑两边全图最短路,这样,对于每个点,我们就能得到$dis[i]$和$disn[i]$。 这时候,我们 阅读全文
posted @ 2018-12-22 16:27
y_immortal
阅读(242)
评论(0)
推荐(0)
摘要:
很休闲的一个题啊 其实一看到关于$\sum k$的限制,就知道是个虚树的题了 首先我们把虚树建出来,然后考虑怎么计算个数呢? 我们令$f[x]$表示以$x$的子树中,剩余了多少个还没有切断的关键点 首先,如果当前点是一个关键点的话,那么他所有的$f[son]!=0$的儿子都需要割掉,而且当前点的$f 阅读全文
posted @ 2018-12-22 16:27
y_immortal
阅读(194)
评论(0)
推荐(0)
摘要:
又是一道虚树好题啊 我们建出来虚树,然后考虑dp过程,我们分别令$sum[x],mndis[x],mxdis[x],size[x]$为子树内的路径长度和,最短链,最长链,子树内关键点个数。 对于一个关键点,首先他的$size=1,mndis=0$ 我们考虑怎么合并,首先我们可以直接维护三个值表示最终 阅读全文
posted @ 2018-12-22 16:25
y_immortal
阅读(131)
评论(0)
推荐(0)
摘要:
纪念第一次所有的解析全写在代码里面 QWQ 这里就简单说几句了 首先一个灯有贡献,当且仅当他被按了$4k$次。 那么我们定义$f(S)$表示$[1,n]$中有多少个数$x$是集合$S$中元素的公倍数 $$f(S) = \frac{n}{lcm_{x\in S} x}$$ 这里需要注意的是,求$lcm 阅读全文
posted @ 2018-12-22 16:25
y_immortal
阅读(234)
评论(0)
推荐(0)
摘要:
纪念我菜的真实的一场模拟赛 首先看到这个题目,一开始就很毒瘤。一定是没有办法直接做的。 我们考虑转化问题 假设,我们选择枚举$x$,其中$x$是$10$的若干次方,那么我们只需要求有多少对异或完比$x$大的数,那么就是$x$对于答案的贡献了。 那么应该怎么求比多少对呢? !!!trie!!! 对于t 阅读全文
posted @ 2018-12-22 16:25
y_immortal
阅读(175)
评论(0)
推荐(0)
摘要:
膜拜一发$mts\_246,forever\_shi$ 这两位爷是真的无敌! 首先来看这个题,一看题目的数据范围和“关键点”字眼,我们就能得知这是一道虚树题 那就先一如既往的建出来虚树吧 QWQ 但是这之后,应该怎么去dp呢。 首先,我们需要知道在虚树上每个点的从属都是谁,这样才便于我们进一步扩展到 阅读全文
posted @ 2018-12-22 16:24
y_immortal
阅读(211)
评论(0)
推荐(0)
摘要:
因为辣鸡csdn,导致之前快写好的博客没了 QWQ悲伤逆流成河qwqqq 首先虚树,这个东西,我感觉是一种思想,或者是方法,而并不是一个数据结构什么的。 他主要是用来解决:给出一棵树,每次询问选择一些关键点,求一些信息。 这些信息的特点是,许多未选择的点可以通过某种方式剔除而不影响最终结果。 于是就 阅读全文
posted @ 2018-12-22 16:22
y_immortal
阅读(123)
评论(0)
推荐(0)
摘要:
题目大意: 给你一棵树,边权都是1,每一个点有一个是起点的概率和一个是终点的概率,你将以起点为根,开始在树上随机dfs,每到一个点,就会将他的所有儿子随机打乱成序列,然后按照那个随机顺序走完,直到走到终点。求dfs从起点到终点的期望长度。 其实一开始看到这个题,还是有点懵逼的啊 根据期望的线性性,我 阅读全文
posted @ 2018-12-22 16:16
y_immortal
阅读(152)
评论(0)
推荐(0)
摘要:
题目大意就是 给你一个DAG 然后添加一条边$x y$ ,询问以1为根的生成树的个数 QWQ 首先假设没有添加的边 答案就应该是 $$ans=\prod_{i=1}^{n} in[i] $$ QWQ就相当于每个点选择一个父亲。 那么加入一条边,我们会有一些不合法的情况,那就是包含一条$y x$路径, 阅读全文
posted @ 2018-12-22 16:16
y_immortal
阅读(188)
评论(0)
推荐(0)
摘要:
这个题目很有意思 QWQ 根据题目描述,我们可以知道,首都就是所谓的树的重心,那么我们假设每颗树的重心都是$root$的话,对于每次询问,我们只需要$findroot(x)$就可以。 那么如何处理$link$操作呢QWQ 这里是看了题解,我才知道是怎么做的 大致的思想就是: !启发式合并! 首先,这 阅读全文
posted @ 2018-12-22 16:15
y_immortal
阅读(219)
评论(0)
推荐(0)
摘要:
QWQ嘤嘤嘤 此题正规题解应该是边分治??或者是树剖(总之不是LCT) 但是我这里还是把它当成一个LCT题目来做 首先,这个题的重点还是在update上 因为有$makeroot$这个操作的存在,所以自然避免不了$reverse$,而当$reverse$之后,会影响到每个点维护的值的时候,就需要同时 阅读全文
posted @ 2018-12-22 16:15
y_immortal
阅读(206)
评论(0)
推荐(0)
摘要:
这个题目还是很好啊QWQ很有纪念意义 首先,如果在序列上且是单次询问的话,就是一个非常裸的贪心了QWQ这也是NOI当时原题的问题和数据范围 我们考虑上树的话,应该怎么做? 我的想法是,对于每一位建一个LCT来做,然后对一个点x维护,当前是0到链顶的结果,当前是1到顶的结果,当前是0到底的结果,当前是 阅读全文
posted @ 2018-12-22 16:15
y_immortal
阅读(266)
评论(0)
推荐(0)
摘要:
QWQ 这个题目是LCT维护子树信息的经典应用 根据题目信息来看,对于一个这条边的两个端点各自的$size$乘起来,不过这个应该算呢? 我们可以考虑在LCT上多维护一个$xv[i]$表示$i$的虚子树的子树和,然后维护$sum[i]$表示$i$的虚+实子树之和。 那么对于一个点$x$,他在原树上的字 阅读全文
posted @ 2018-12-22 16:15
y_immortal
阅读(155)
评论(0)
推荐(0)
摘要:
这也是一道LCT维护生成树的题。 那么我们还是按照套路,先对边进行排序,然后顺次加入。 不过和别的题有所不同的是: 在本题中,我们需要保证LCT中正好有$n 1$条边的时候,才能更新$ans$ 其次,更新答案的时候,已知我们的边是最小的边,所以我们要考虑删除最大的边来考虑更新答案,而求最大边的过程, 阅读全文
posted @ 2018-12-22 16:14
y_immortal
阅读(220)
评论(0)
推荐(0)
摘要:
本题是运用LCT来维护一个最小生成树。 是一个经典的套路 题目中求的是一个$max(a_i)+max(b_i)$尽可能小的路径。 那么这种的一个套路就是,先按照一维来排序,然后用LCT维护另一维 那么这个对于这个题来说,我们考虑,可以先按照a从小到大排序,然后顺次加入每条边,这样每次加入的边一定是有 阅读全文
posted @ 2018-12-22 16:07
y_immortal
阅读(213)
评论(0)
推荐(0)
摘要:
这个题和魔法森林感觉有很相近的地方啊 同样也是维护一个类似最大边权最小的生成树 但是不同的是,这个题是有$cut$和询问,两种操作.... 这可如何是好啊? 我们不妨倒着来考虑,假设所有要$cut$的边全都不存在,倒序做这个问题,不就是相当于在支持$link$操作吗? 那么就和之前的问题大致上是一样 阅读全文
posted @ 2018-12-22 16:07
y_immortal
阅读(141)
评论(0)
推荐(0)
摘要:
最近学习了一波LCT qwq 强势安利Flashhu的博客!!!!! 真的特别详细(可惜我不会弄链接) 如果有想要学习$LCT$的同学,可以直接看他的博客 我这里就简单写一点自己的体会啊。 $LCT$大致上就是一个支持加边,删边,维护子树信息,路径修改,维护路径信息的一个数据结构 本质上LCT是一个 阅读全文
posted @ 2018-12-22 16:04
y_immortal
阅读(261)
评论(0)
推荐(0)
摘要:
据说这个题当年的正解是分块qwq 根据题目所说,对于题目中的弹力系数,就相当于一条边,那么对于“跳出去”这个限制,我们可以选择建造一个新点$n+1$表示结束,那么每次,求一个点要多少次跳出去,只需要求$n+1$到$x$的点数,然后减1就行 直接上代码 c // luogu judger enable 阅读全文
posted @ 2018-12-22 16:04
y_immortal
阅读(88)
评论(0)
推荐(0)
摘要:
这个题是一个经典的维护路径信息的题,对于路径上的修改,我们只需要把对应的链$split$上来,然后修改最上面的点就好,注意pushdown的时候的顺序是先乘后加 然后下传乘法标记的时候,记得把对应的$add$标记也要乘,因为就跟线段树的下传标记类似 c // luogu judger enable 阅读全文
posted @ 2018-12-22 16:04
y_immortal
阅读(198)
评论(0)
推荐(0)
摘要:
好久没写博客了..... 这段时间狂补一下 题目大意: 给定一个$n n$的全0矩阵,每次有两种操作: $L\ a\ b\ c\ d\ delta$ 表示将左上角$(a,b)$,右下角$(c,d)$的矩阵加$delta$ $k\ a\ b \ c \ d$ 表示求左上角$(a,b)$,右下角$(c, 阅读全文
posted @ 2018-12-22 16:03
y_immortal
阅读(197)
评论(0)
推荐(0)
摘要:
QwQ点分治这个东西 还是很有意思的 点分治主要是用来解决一些树上路径问题 首先,我们要明确点分治的分治标准是重心 什么是重心? 如果以$x$为根,所有子树的最大$size$最小,那么称$x$是这棵树的重心 那么怎么去找重心呢 我们直接$dfs$,然后对于每个点,求一个$mx[i]$表示,以$i$为 阅读全文
posted @ 2018-12-22 16:01
y_immortal
阅读(215)
评论(0)
推荐(0)
摘要:
题目链接: "题目" . 简单一点来说,这个题就是求一个字符串的$num$数组的和,其中有$num[i]$表示1~i中有多少个不交叉的相等的前缀和后缀 的数目,要求一个$O(n)$的做法 QwQ 感觉一看到这个题,其实没什么思路呀 从$KMP$的角度出发,对于一个$i$来说,显然$pre[i],pr 阅读全文
posted @ 2018-12-22 16:01
y_immortal
阅读(110)
评论(0)
推荐(0)
摘要:
QwQ题目太长 这里就不复制了 "题目" 这个题...算是个比较经典的平面图最小割变成对偶图的最短路了QwQ 首先考虑最小割应该怎么做。 有一个性质,就是每个点的海拔要么是1,要么是0 QwQ不过这个我不会证明啊 那么既然知道了这个性质,我们对于地图上的每个点,实际上就是划分成两个集合,一个是$1$ 阅读全文
posted @ 2018-12-22 16:00
y_immortal
阅读(137)
评论(0)
推荐(0)
摘要:
题目大意 约翰有$n$块草场,编号$1$到$n$,这些草场由若干条单行道相连。奶牛贝西是美味牧草的鉴赏家,她想到达尽可能多的草场去品尝牧草。 贝西总是从$1$号草场出发,最后回到$1$号草场。她想经过尽可能多的草场,贝西在通一个草场只吃一次草,所以一个草场可以经过多次。因为草场是单行道连接,这给贝西 阅读全文
posted @ 2018-12-22 14:15
y_immortal
阅读(205)
评论(0)
推荐(0)
摘要:
QwQ好久没更新博客了,颓废了好久啊,来补一点东西 题目大意 给定两个点对,求两对点间最短路的最长公共路径。 其中$n,m\le 10^5$ 比较简单吧 就是跑四遍最短路,然后把最短路上的边拿出来,跑一遍拓扑排序加$dp$就OK 对于一条边$u v$,满足$dis[u]+w+disn[v]=dis[ 阅读全文
posted @ 2018-12-22 14:09
y_immortal
阅读(132)
评论(0)
推荐(0)
摘要:
题目描述 小D有个数列 $a$,当一个数对 $(i,j)(i\le j)$ 满足$a_i$和$a_j$的积 不大于 $a_i \cdots a_j$ 中的最大值时,小D认为这个数对是美丽的.请你求出美丽的数对的数量。 输入格式 : 第一行输入一个整数 $n$,表示元素个数。 第二行输入 $n$ 个整 阅读全文
posted @ 2018-12-22 14:07
y_immortal
阅读(151)
评论(0)
推荐(0)
摘要:
QWQ 一到假期就颓废 哎 今年新鲜出炉的NOI题,QwQ同步赛的时候写的,后来交了一发洛谷,竟然过了 首先 根据题目,我们很容易得到,假设对应每一条龙的剑的攻击力是$atk$的话 $$a_i x\times atk + k p_i = 0 $$ $$x\times atk = a_i \pmod 阅读全文
posted @ 2018-12-22 14:06
y_immortal
阅读(138)
评论(0)
推荐(0)
摘要:
题目描述 经过千辛万苦小 A 得到了一块切糕,切糕的形状是长方体,小 A 打算拦腰将切糕切成两半分给小 B。出于美观考虑,小 A 希望切面能尽量光滑且和谐。于是她找到你,希望你能帮她找出最好的切割方案。 出于简便考虑,我们将切糕视作一个长 P、宽 Q、高 R 的长方体点阵。我们将位于第 z层中第 x 阅读全文
posted @ 2018-12-22 14:06
y_immortal
阅读(146)
评论(0)
推荐(0)
摘要:
这里还是一道涉及到区间连边的问题。 如果暴力去做,那么就会爆炸 那么这时候就需要线段树来优化了。 因为是双向边 所以需要两颗线段树来分别对应入边和出边 QwQ然后做就好了咯 不过需要注意的是,这个边数的大小不好掌握,以后碰到这种题还是要仔细算一算的 c++ include include inclu 阅读全文
posted @ 2018-12-22 14:04
y_immortal
阅读(221)
评论(0)
推荐(0)
摘要:
哇 这难道不是happiness的翻版题嘛? 从$S$向一个点连染成白色的收益 从这个点向$T$连染成黑色的收益 对于额外的收益,建一个辅助点,跟区间内的每个点连$inf$,然后向S/T,连流量为收益 这不就结束了吗? 自信写完,提交 woc!!只有40分? c++ include include 阅读全文
posted @ 2018-12-22 13:51
y_immortal
阅读(143)
评论(0)
推荐(0)
摘要:
给定一张有向图,每条边都有一个容量C和一个扩容费用W。这里扩容费用是指将容量扩大1所需的费用。 求: 1、在不扩容的情况下,1到N的最大流; 2、将1到N的最大流增加K所需的最小扩容费用。 其中$n \le 1000,m \le 5000,k \le 10$ 网络流题,复杂度都是没用的了.... 第 阅读全文
posted @ 2018-12-22 13:49
y_immortal
阅读(100)
评论(0)
推荐(0)
摘要:
给定一张无向图,你每次可以将一条路的权值增加1,询问最少增加多少次才会使得$s t$的最短路改变 QwQ一看到这个题,我就用种最小割的感觉 我们可以把最短路上的点取出来,然后做最小割呀!! 首先 我们将最短路求一下$dis[i]$表示$s$到$i$的最短距离,$disn[i]$表示$t$到$i$的最 阅读全文
posted @ 2018-12-22 13:49
y_immortal
阅读(211)
评论(0)
推荐(0)
摘要:
今天在这里说一下多重背包问题 对 之前一直没有怎么彻底理解 首先多重背包是什么?这里就不做过多的赘述了 朴素的多重背包的复杂度是$O(n m \sum s[i])$,其中$s[i]$是每一件物品的数量 但大多数题目,这种复杂度是不能允许的 那么我们考虑优化 首先我们考虑,怎么样快速表示$1~n$中所 阅读全文
posted @ 2018-12-22 13:48
y_immortal
阅读(119)
评论(0)
推荐(0)
摘要:
QwQ被普及组的题折磨的死去活来。 硬是卡线段树,没卡过QwQ oi生涯,第一道正经的单调队列dp题 进入正题 题目大意: 其中$n \le 500000$ 看到这个题的第一感觉就是二分金币数 很显然,如果$mid$可以,那么$mid+1$一定可以 但是QwQ 不要想$nlog^2n$了(卡了一下午 阅读全文
posted @ 2018-12-22 13:48
y_immortal
阅读(200)
评论(0)
推荐(0)
摘要:
题目大意: 神犇星球有 $n$ 座小城。对于任意两座小城 $v,u$$(v≠u)$,吉米多出题斯基想在 $v,u$ 之间建立一个传送时间为 $w(v,u)$的无向传送通道,其中 $w(v,u)$ 为不超过 $k$ 的非负整数。建成后,神犇星球的居民可从一座小城出发经过一个或若干个传送通道到达另一座小 阅读全文
posted @ 2018-12-22 13:47
y_immortal
阅读(202)
评论(0)
推荐(2)
摘要:
QwQ太懒了,题目直接复制uoj的了 QwQ这个题可以说是十分玄学的一道题了 首先可以暴搜,就是$dfs$然后模拟每个过程是哪个柱子向哪个柱子移动 不多解释了,不过实现起来还是有一点点难度的 直接上代码吧 c++ include include include include include inc 阅读全文
posted @ 2018-12-22 13:46
y_immortal
阅读(245)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个$n$个数的序列$a$,给定一个$x$,其中$a$数组可以进行顺序的调换,每一个$a_i$都能使$x=x \mod a_i $, 求最后经过一系列计算后的$y$,满足$abs(x y)$尽可能小,并求出方案数 QwQ 哇,一看到这个题。说实话,没什么好的思路。 也就发现了几个性质 阅读全文
posted @ 2018-12-22 13:45
y_immortal
阅读(219)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个长度为$n$的序列 让你找一个$x$,使得$ans$尽可能小 其中$$ans=\sum_{i=1}^{n}\lfloor\frac{a_i}{x}\rfloor + \sum_{i=1}^{n} a_i\mod x $$ 我们看到这个式子,可以考虑化简一下$$ans=\sum_{ 阅读全文
posted @ 2018-12-22 13:45
y_immortal
阅读(193)
评论(0)
推荐(0)
摘要:
QwQ一个不会莫比乌斯反演的蒟蒻来写杜教筛的博客了 这个是杜教筛的一般形式 中间那个先枚举几倍,实际上相当于把令$i=k d$ 然后进行k和d枚举 这么空说怎么好理解 我们来引入两道例题吧 $51nod$ 莫比乌斯函数之和 求$$\sum_{i=1}^{n}\mu(i)$$ 一看这个题,貌似没什么头 阅读全文
posted @ 2018-12-22 13:43
y_immortal
阅读(147)
评论(0)
推荐(0)
摘要:
题目大意: 给你一个无向图$G(V,E)$。 每个顶点都有一个int范围内的整数的标记。 不同的顶点可能有相同的标记。 对于边$(u,v)$,我们定义$Cost(u,v)=mark [u]\ \ xor\ \ mark [v]$。 现在我们知道某些节点的标记了。你需要确定其他节点的标记,以使边的总成 阅读全文
posted @ 2018-12-22 13:43
y_immortal
阅读(113)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个初始集合和目标集合,有两种操作:1.合并集合中的两个元素,新元素为两个元素之和 2.分裂集合中的一个元素,得到的两个新元素之和等于原先的元素。要求用最小步数使初始集合变为目标集合,求最小步数。 其中初始集合和目标集合的元素个数都不超过10个 这是一道非常值得纪念的好题 首先一看到 阅读全文
posted @ 2018-12-22 13:42
y_immortal
阅读(152)
评论(0)
推荐(0)
摘要:
QwQ嘤嘤嘤 只是为了整理一下自己的求逆元的方法 假设我们要求a在模p意义下的逆元,我们会有以下几种做法: 1 如果p是质数的话 $$a^{p 1} \equiv 1 \pmod p $$ 那么我们稍加变形,就能得出$$a^{p 2} \equiv \frac{1}{a} \pmod p$$ 那么$ 阅读全文
posted @ 2018-12-22 13:41
y_immortal
阅读(119)
评论(0)
推荐(0)
摘要:
线性基是干嘛的呢? 给定n个数,求所有数的异或和最大是多少? 求解这类问题的时候,就需要线性基了 个人感觉线性基本身就一种贪心。 首先定义$base[i]$表示最高位1在i位的数是什么 对于新进来的数$tmp$,我们先找出他最高位上的1,假设为第$j$位,然后看一下$base[j]$有没有数,如果没 阅读全文
posted @ 2018-12-22 13:41
y_immortal
阅读(98)
评论(0)
推荐(0)
摘要:
题目大意: 给定$n$个二元组$(a,b)$,求一个最大的$\sum b$的集合,满足这个集合的任意子集的$a$的$xor$值不为0 这道题需要一个线性基的性质: 线性基的任何非空子集的$xor$值不为0 那么我们对于题目中对a的要求,只需要维护一个线性基即可。 那如何保证$\sum b$最大呢.. 阅读全文
posted @ 2018-12-22 13:41
y_immortal
阅读(186)
评论(0)
推荐(0)
摘要:
这道题算是真正意义上人生第一道期望的题? 题目大意: 给定一个n个点的,以1号点为根的树,每一次可以将一个点和它的子树全部染黑,求染黑所有点的期望 QwQ说实话,我对期望这种东西,一点也不理解。。。 根据期望的线性性,计算出每个点比选择的期望次数,然后直接相加 所以得出$E(x) = \frac{1 阅读全文
posted @ 2018-12-22 13:40
y_immortal
阅读(112)
评论(0)
推荐(0)
摘要:
就是一道模板题! 这里再强调一下 BSGS 考虑方程$a^x = b \pmod p$ 已知a,b,p$(2 \le p\le 10^9)$,其中p为质数,求x的最小正整数解 解法: 注意到如果有解,那么一定满足$0 include include include include define ll 阅读全文
posted @ 2018-12-22 13:39
y_immortal
阅读(136)
评论(0)
推荐(0)
摘要:
强烈鸣谢wddwjlss 题目大意:给出一个奇素数,求出他的原根的个数,多组数据。 这里先介绍一些基本性质 阶 设$(a,m)=1$,满足$a^r \equiv 1 \pmod m$的最小正整数r叫做整数a模m的阶 那么给出一个定理: 设$(a,m)=1$,r为a摸m的阶,则对于每个正整数k,$a^ 阅读全文
posted @ 2018-12-22 13:39
y_immortal
阅读(207)
评论(0)
推荐(0)
摘要:
题目大意: 克里特岛以野人群居而著称。岛上有排列成环行的M个山洞。这些山洞顺时针编号为1,2,…,M。岛上住着N个野人,一开始依次住在山洞C1,C2,…,CN中,以后每年,第i个野人会沿顺时针向前走Pi个洞住下来。 每个野人i有一个寿命值Li,即生存的年数。 奇怪的是,虽然野人有很多,但没有任何两个 阅读全文
posted @ 2018-12-22 13:38
y_immortal
阅读(173)
评论(0)
推荐(0)
摘要:
中国剩余定理 中国剩余定理常用来求解同余方程组,形如 $$x \equiv a_i \pmod m_i$$ 的方程组 首先,我们来讨论模数互质的: 对于这类问题应该怎么求解呢? (果然我只是会背个板子) 首先,我们定义 $$M=\prod m_i$$ 然后令$$M_i = \frac{M}{m_i} 阅读全文
posted @ 2018-12-22 13:37
y_immortal
阅读(198)
评论(0)
推荐(0)
摘要:
首先给出两个定理: 1.费马小定理 设p是一个素数,a是一个整数,且不是p的倍数,那么 $a^{p−1} \equiv\ 1 \pmod p$ 2.二次探测定理 若$p$是素数,$x$是一个正整数,且$x^2\ mod\ p\ =\ 1$,那么$x \equiv \pm 1 \pmod p$ QwQ 阅读全文
posted @ 2018-12-22 13:36
y_immortal
阅读(239)
评论(0)
推荐(0)
摘要:
题目大意 给定一个三元组$(x,y,z)$的$gcd$和$lcm$,求可能的三元组的数量是多少,其中三元组是的具有顺序的 其中$gcd$和$lcm$都是32位整数范围之内 由算术基本定理可以得知: 如果$k=gcd(m,n) $则$ k_p=min(m_p,n_p)$ 如果$k=lcm(m,n)$则 阅读全文
posted @ 2018-12-22 13:35
y_immortal
阅读(262)
评论(0)
推荐(0)
摘要:
题目大意: 现在有n个操作和一个最低限度m $I$命令$I\ k$新建一个工资档案,初始工资为k。 $A$命令$A\ k $把每位员工的工资加上k $S$命令$S\ k $把每位员工的工资扣除k $F$命令$ F\ k$查询第k多的工资 (如果当前的员工总数不够k,就输出$ 1$) 其中$n \le 阅读全文
posted @ 2018-12-22 13:34
y_immortal
阅读(146)
评论(0)
推荐(0)
摘要:
给定t组询问,每组询问包括一个l和r,要求$[l,r]$的素数有哪些 其中$t \le 10,1 \le l \le r \le 1000000000 , r l \le 100000$ QwQ 我们可以观察到,这个题$r l$的范围不是很大,而且所要求的区间也是连续的,所以 我们可以先预处理出$\ 阅读全文
posted @ 2018-12-22 13:34
y_immortal
阅读(115)
评论(0)
推荐(0)
摘要:
题目大意 作为一个生活散漫的人,小Z每天早上都要耗费很久从一堆五颜六色的袜子中找出一双来穿。终于有一天,小Z再也无法忍受这恼人的找袜子过程,于是他决定听天由命…… 具体来说,小Z把这N只袜子从1到N编号,然后从编号L到R(L 尽管小Z并不在意两只袜子是不是完整的一双,甚至不在意两只袜子是否一左一右, 阅读全文
posted @ 2018-12-22 13:33
y_immortal
阅读(135)
评论(0)
推荐(0)
摘要:
莫队是一种对于询问的离线算法 时间复杂度:O($n \sqrt n$) 大致思想就是 首先将询问离线,然后对原序列分块,使得每一个$l和r$都在一个块里 然后按照左节点排序,若所在的块相等,就比较右节点 c++ inline void update(int pos,int add) { ans =p 阅读全文
posted @ 2018-12-22 13:31
y_immortal
阅读(130)
评论(0)
推荐(0)
摘要:
题目大意 给定一个长度为n的序列,有m个操作,操作包括两种: $0\ l\ r$区间[l,r]的数字升序排序 $1\ l\ r$区间[l,r]的数字降序排序 最后询问在q位置上的数是多少? 其中$n \le 100000,m\le 100000$ QWQ这个题是看了题解才会的,感觉思路很不错 我们考 阅读全文
posted @ 2018-12-22 13:26
y_immortal
阅读(207)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个长度为n的01序列为,现在有m种操作 $0\ a\ b$ 把$[a,b]$的数全部修改为0 $1\ a\ b$ 把$[a,b]$的数全部修改为1 $2\ a\ b$ 把$[a,b]$的所有数取反,就是0 1 1 0 $3\ a\ b$ 询问$[a,b]$中一共有多少个0 $4\ 阅读全文
posted @ 2018-12-22 13:21
y_immortal
阅读(153)
评论(0)
推荐(0)
摘要:
题目自己去找吧 记得数据范围是 include include include include include include include using namespace std; inline int read() { int x=0,f=1;char ch=getchar(); while 阅读全文
posted @ 2018-12-22 13:19
y_immortal
阅读(178)
评论(0)
推荐(0)
摘要:
题目描述 在数轴上有 $N$ 个闭区间 $[l_1,r_1],[l_2,r_2],...,[l_n,r_n]$ 。现在要从中选出 $M$ 个区间,使得这 $M$ 个区间共同包含至少一个位置。换句话说,就是使得存在一个 $x$ ,使得对于每一个被选中的区间 $[l_i,r_i]$ ,都有 $l_i≤x 阅读全文
posted @ 2018-12-22 13:15
y_immortal
阅读(131)
评论(0)
推荐(0)
摘要:
题目大意 给定一个n个点,m条边的图,每条边有边权,而每个点$i$也可以直接到达$j$,代价是$i\ xor\ j$,给定一个S和T,求S到T的最小代价 其中$n\le100000,m\le100000$ 一看这个数据范围,我们就知道显然不能建图~ 那么就需要一点小技巧了 就是说,一条边可以由好几部 阅读全文
posted @ 2018-12-22 13:14
y_immortal
阅读(503)
评论(0)
推荐(0)
摘要:
题目描述 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”。它的含义是X年的降雨量不超过Y年,且对于任意$Y简单来说!对于一个询问来说$x,y$,我们需要满足$x\ge y z 其中z\in[x+1,y 1]$ 一眼看过去QwQ 这个题难道不是区间维护最大值,不就OK了吗? 一写,发现完美gg 阅读全文
posted @ 2018-12-22 13:01
y_immortal
阅读(131)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个长度为n的序列,每一个位置的初始颜色都是1,现在有m个操作。 $C\ l\ r\ x$将$[l,r]$的颜色都修改成x $P\ l\ r$查询[l,r]的颜色有多少种 其中! 颜色种类不超过30 经过观察,我们发现这个题的颜色种类特别少!那么我们可以直接将线段树节点所对应的区间含 阅读全文
posted @ 2018-12-22 13:00
y_immortal
阅读(183)
评论(0)
推荐(0)
摘要:
题目大意: 给定一个长度为n的链,一共m次操作 对于每次操作 $C\ l\ r\ x$表示将第l个点到第r个点之间的所有道路的权值增加v $Q\ l\ r$在第l个到第r个点里等概率随机取出两个不同的点a和b,那么从a行驶到b将期望花费多少费用呢 QwQ我们可以考虑将期望分为分子和分母两部分 首先考 阅读全文
posted @ 2018-12-22 12:59
y_immortal
阅读(118)
评论(0)
推荐(0)
摘要:
题目大意 给定n朵花,每个花有三个属性,定义$f[i]$为满足$a_j \le a_i$且$b_j \le b_i$且$c_j \le c_i$的j的数量, 求$d \in [0,n)$,$f[i]=d$的数量 这题是一道CDQ的入门题 CDQ其实本质上是一个分治的过程,需要将询问离线,然后进行分治 阅读全文
posted @ 2018-12-22 12:58
y_immortal
阅读(124)
评论(0)
推荐(0)
摘要:
题目大意 给定一个n个数的数列,m个操作,有三种操作: $1\ x\ v$ 将$a_x$的值修改成v $2\ l\ r\ $ 求 $\sum_{i=l}^r x_i f_{i l}$ 其中对于$f$数组 $f_0=1\ ,f_1=1\ ,f_i=f_{i 1}+f_{i 2}$ (就是斐波那契数列) 阅读全文
posted @ 2018-12-22 12:57
y_immortal
阅读(171)
评论(0)
推荐(0)
摘要:
题目大意 给定n个元素的数列,每一个元素有x和y两种元素,现在有三种操作: $1\ L\ R$ 设$xx$为$[l,r]$的元素的$x_i$的平均值,$yy$同理 求 $\frac{\sum_{i=L}^R(x_i xx)(y_i yy)} {\sum_{i=L}^R(xi xx)^2}$ $2\ 阅读全文
posted @ 2018-12-22 12:56
y_immortal
阅读(153)
评论(0)
推荐(0)
摘要:
QAQ一道线段树好题 题目大意: 给定一个有n个数的数列,共m种操作,有两种操作 $1\ l\ r\ k\ d$表示将$a[l]$~$a[r]$的数加一个以k为首相,d为公差 $2\ x$表示求$a[x]$是多少 QwQ又是一道不会的题 暴力修改肯定会T飞 如果可以用线段树进行区间修改呢?? 我们考 阅读全文
posted @ 2018-12-22 12:55
y_immortal
阅读(533)
评论(0)
推荐(0)
摘要:
题目描述 小 A 和小 B 决定利用假期外出旅行,他们将想去的城市从 1 到 N 编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互不相同,记城市 i 的海拔高度为Hi,城市 i 和城市 j 之间的距离 d[i,j]恰好是这两个城市海拔高度之差的绝对值,即d[i,j] = |Hi 阅读全文
posted @ 2018-12-22 12:53
y_immortal
阅读(158)
评论(0)
推荐(0)
摘要:
题目大意: 给定n个点排成一排,每个点有一个点权,有m次修改,每次改变某个点的点权并将最大点独立集计入答案,输出最终的答案 其中$n\le 40000\ , \ m\le 50000$ QWQ说实话,一开始看这个题,没啥思路呀 后来看了题解才知道是线段树 我们考虑对一个区间,我们只需要关心左右节点是 阅读全文
posted @ 2018-12-22 12:43
y_immortal
阅读(133)
评论(0)
推荐(0)
摘要:
题目描述 莫莉斯·乔是圣域里一个叱咤风云的人物,他凭借着自身超强的经济头脑,牢牢控制了圣域的石油市场。 圣域的地图可以看成是一个n m的矩阵。每个整数坐标点(x , y)表示一座城市$( 1\le x\le n,1\le y\le m)$。两座城市间相邻的定义为:对于城市(Ax, Ay)和城市(Bx 阅读全文
posted @ 2018-12-22 12:36
y_immortal
阅读(155)
评论(0)
推荐(0)
摘要:
QWQ前几天才刚刚把这个D1T3写完 看着题解理解了很久,果然我还是太菜了QAQ 题目大意就是 给你一个n个点,m条边的图,保证1能到达n,求从1到n的 (设1到n的最短路长度是d)路径长度在[d,d+k]之间的路径有多少条,答案要对p取膜 下面附上数据范围的大表哥! 首先对于30%的数据,我们可以 阅读全文
posted @ 2018-12-22 12:32
y_immortal
阅读(218)
评论(0)
推荐(0)
摘要:
https://blog.csdn.net/y752742355/article/details/80208805 阅读全文
posted @ 2018-12-22 12:29
y_immortal
阅读(92)
评论(0)
推荐(0)
摘要:
QWQ啊 这个题可以说是我目前碰到过的最难理解的dp之一了。 题目大意: 已知参赛选手的得分,你的任务是按照得分从高到底给出选手的排名。遗憾的是,保存选手信息的数据结构只支持 一种操作,即将一个选手从位置i移动到位置j,该移动不改变其他选手的相对位置,即如果i j,位置j和位置i 1 之间的选手的位 阅读全文
posted @ 2018-12-22 12:26
y_immortal
阅读(383)
评论(0)
推荐(1)
摘要:
题目大意: 现在给你一个有n个点和m条边的图,每一条边都有一个费用,每个点不能经过超过两次,求所有点至少遍历一次的最小费用 其中n include include include include using namespace std; inline int read() { int x=0,f=1 阅读全文
posted @ 2018-12-22 12:22
y_immortal
阅读(288)
评论(0)
推荐(0)

浙公网安备 33010602011771号