摘要: ###【TiTle】 身为全电大最聪明的猫,菜猫他有 \(n\) 个不同水杯,为了方便喝水,菜猫给第 \(i\) 号水杯里面盛上i毫升水。 ###【Content】 有一天,猫口渴了。他决定喝一些水来解渴。因为活得太久,喝水在猫看来也应该是一种艺术,不同的水杯里的水一起喝可口程度不同。所以他决定在他 阅读全文
posted @ 2021-11-29 23:01 Iamhx 阅读(21) 评论(0) 推荐(0) 编辑
摘要: 我们常用数据结构处理一些序列上的问题。这些问题的形式一般是给定序列的两个位置L和R,在区间[L,R]上执行查询和修改指令。如果给定的是一棵树,要求查询树上两个节点x和y路径的答案。点分治可以在一棵树上,对具有某些限定条件的路径静态地进行统计 【例题】 Tree (Poj 1741) 给定一棵有N个点 阅读全文
posted @ 2021-08-14 19:38 Iamhx 阅读(16) 评论(0) 推荐(0) 编辑
摘要: 一、割点 1 . 割点的定义。 在无向连通图中,如果将其中一个点以及所有连接该点的所有边去掉,图就不再连通,那么这个点就叫做割点。 2 . tarjan算法的引入 Tarjan算法是利用时间戳来解决连通分量问题的一类优秀算法。Tarjan算通过dfs,构成一颗dfs树。在Tarjan算法中,给每个点 阅读全文
posted @ 2018-09-10 20:54 Iamhx 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 根据floyd原理,在最外层进行k-1次循环之后dis[i][j]则代表了i到j的路径中,所有结点编号都小于k的最短路径。 因此我们可以在floyd过程中顺便算出最小环。即用dis[i][k] + dis[k][j] + dis[i][j] 来更新最小环的值 为防止dis[i][k]+dis[k][ 阅读全文
posted @ 2018-09-10 19:57 Iamhx 阅读(170) 评论(0) 推荐(0) 编辑
摘要: 题意: 给你一张图,要你新建一张子图。要求枚举原图中的所有边,如果某一条边链接的两个节点都在子图中,这条边一定要在子图中。如果新建的子图中的任意两点u, v满足u可以到v或v可以到u,则称这个子图为“半连通子图”。要你求出最大的半连通子图的节点数,以及最大的半连通子图的方案数有多少(方案数对C取模) 阅读全文
posted @ 2018-09-04 21:01 Iamhx 阅读(169) 评论(0) 推荐(0) 编辑
摘要: 并没有参加比赛,全是赛后AC A题 题意:现有一个长度为n的字符串s。你需要构建一个长度最小的字符串t,使得t中恰好包含k个s(允许部分重叠),输出这个字符串 B题 题意:给出一个长度为n的数组A,数组A中的元素a[i]满足(1<=a[i]<=10^9),且a[i]严格大于a[i-1](2<=i<= 阅读全文
posted @ 2018-09-03 20:01 Iamhx 阅读(189) 评论(0) 推荐(0) 编辑
摘要: RT UPD:我又开始颓废了。。再次弃坑。 阅读全文
posted @ 2018-09-03 19:50 Iamhx 阅读(166) 评论(0) 推荐(0) 编辑
摘要: BZOJ 4034 树上操作 有一棵点数为 N 的树,以点 1 为根,且树点有边权。然后有 M 个 操作,分为三种: 操作 1 :把某个节点 x 的点权增加 a 。 操作 2 :把某个节点 x 为根的子树中所有点的点权都增加 a 。 操作 3 :询问某个节点 x 到根的路径中所有点的点权和。 做法 阅读全文
posted @ 2018-07-14 11:49 Iamhx 阅读(117) 评论(0) 推荐(0) 编辑
摘要: 容斥原理大概是这样的,以长方体体积并为例,我们需要用容斥原理容斥出若干个长方体体积的并.首先,我们将每个长方体标号为1~n,那么这些长方体的取舍显然可以表示为一个二进制的数字S. 设F[S]表示长方体取舍状态为S时,长方体的体积并,于是我们可以知道F[111111(有N个1)]就是我们最终的所求. 阅读全文
posted @ 2017-11-09 17:39 Iamhx 阅读(134) 评论(0) 推荐(0) 编辑
摘要: 模运算与基本四则运算有些相似,但是除法例外。其规则如下: (a + b) % p = (a % p + b % p) % p (a - b) % p = (a % p - b % p) % p (a * b) % p = (a % p * b % p) % p (a^b) % p = ((a % p 阅读全文
posted @ 2017-11-05 14:48 Iamhx 阅读(998) 评论(0) 推荐(0) 编辑