上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 29 下一页
摘要: 列一下式子: $\prod_{i = 1}^{n}\prod_{j = 1}^{m}fib_{gcd(i, j)}$ 很套路的变成这样: $\prod_{d = 1}^{min(n, m)}fib_{d}^{\sum_{i = 1}^{\left \lfloor \frac{n}{d} \right 阅读全文
posted @ 2018-09-12 11:23 CzxingcHen 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 复习模板。 两两合并同余方程 $x\equiv C_{1} \ (Mod\ P_{1})$ $x\equiv C_{2} \ (Mod\ P_{2})$ 把它写成不定方程的形式: $x = C_{1} + P_{1} * y_{1}$ $x = C_{2} + P_{2} * y_{2}$ 发现上下 阅读全文
posted @ 2018-09-11 19:30 CzxingcHen 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 思路很乱,写个博客理一理。 缩点 + dp。 首先发现把一个环上的边反向是意义不大的,这样子不但不好算,而且相当于浪费了一次反向的机会。反正一个强连通分量里的点绕一遍都可以走到,所以我们缩点之后把一个强连通分量放在一起处理。 设$st$表示缩点之后$1$所在的点,设$f_{x}$表示从$st$走到$ 阅读全文
posted @ 2018-09-10 22:25 CzxingcHen 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 二维差分+树状数组。 定义差分数组$d_{i, j} = a_{i, j} + a_{i - 1, j - 1} - a_{i, j - 1} - a_{i - 1, j}$,有$a_{i, j} = \sum_{x = 1}^{i}\sum_{y = 1}^{j}d_{i, j}$。 我们要求$s 阅读全文
posted @ 2018-09-10 12:58 CzxingcHen 阅读(127) 评论(0) 推荐(0) 编辑
摘要: Luogu 1792 算是双倍经验。 我们考虑对于一个点,我们要么选它,要么选它周围的两个点。 所以我们考虑用一个堆来维护,每次从堆顶取出最大值之后我们把它的权值记为:它左边的权值加上它右边的权值减去它自己的权值。即$a_{pos} = a_{l(pos)} + a_{r(pos)} - a_{po 阅读全文
posted @ 2018-09-10 10:43 CzxingcHen 阅读(132) 评论(0) 推荐(0) 编辑
摘要: 倍增练习题。 基环树上倍增一下维护维护最小值和权值和,注意循环的时候$j$这维作为状态要放在外层循环,平时在树上做的时候一个一个结点处理并不会错,因为之前访问的结点已经全部处理过了。 时间复杂度$O(nlogk)$。 Code: #include <cstdio> #include <cstring 阅读全文
posted @ 2018-09-09 22:15 CzxingcHen 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 弄了很久,状态很烂…… 首先发现可用的点一共只有$1e5$个,所以可以离散化坐标来方便计算。 发现对于一个空格,设它的上、下、左、右分别有$u, d, l, r$个点,它产生的贡献是$\binom{u}{k} * \binom{d}{k} * \binom{l}{k} * \binom{r}{k}$ 阅读全文
posted @ 2018-09-09 20:54 CzxingcHen 阅读(151) 评论(0) 推荐(0) 编辑
摘要: 并不会这种构造题。 首先可以随意把一个叶子结点当作根,题目告诉了我们这样子不会改变答案。 然后我们考虑一个一个把叶子结点连到这一棵树里面去,对于每一个叶子结点,我们可以把它对答案的贡献看作它向根的连边的长度减去已经计算过的长度,相当于从一条已经连过的边拉出一条新的链把它连到树里面去,不容易发现只要对 阅读全文
posted @ 2018-09-08 20:27 CzxingcHen 阅读(220) 评论(0) 推荐(0) 编辑
摘要: BZOJ3809,是权限题。 我永远喜欢莫队。 先莫队一下移下左右指针,然后用一个数据结构维护一下区间$[a, b]$中的颜色的值,跟着指针移动一起修改修改,每一次$query$的时候就相当于查询一下$[a, b]$中的和。 其实可以直接对颜色进行分块,维护一下块内的值以及每一个位置的答案,每一次修 阅读全文
posted @ 2018-09-08 19:18 CzxingcHen 阅读(106) 评论(0) 推荐(0) 编辑
摘要: 感觉这题可以模板化。 听说spfa死了,所以要练堆优化dijkstra。 首先对$x_{1},y_{1},x_{2},y_{2}$各跑一遍最短路,然后扫一遍所有边看看是不是同时在两个点的最短路里面,如果是的话就把这条边加到一张新图中去,因为最短路一定没有环,所以最后造出来的这张新图一定是一个$DAG 阅读全文
posted @ 2018-09-08 12:37 CzxingcHen 阅读(99) 评论(0) 推荐(0) 编辑
上一页 1 ··· 17 18 19 20 21 22 23 24 25 ··· 29 下一页