摘要: "题目链接" 简要题意 : 删除若干个点(不能是所有或空集),满足剩下的点度数在 $\pmod 3$ 意义下不变。保证图联通。 按照 $\mod 3 = 0, 1,2$ 分为三组点 $Z,A,B$ 首先把一些简单的情况判断掉: 有 $Z$ 点。保留这个点即可。 有两个 $A$ 点之间右边。保留这两个 阅读全文
posted @ 2019-10-22 20:49 jerome_wei 阅读(1416) 评论(1) 推荐(0)
摘要: 考虑枚举行列的 $n+m$ 元组,表示该行 / 列的最小值。 这样的方案数可以容斥轻松算出。 发现这样本质不同的限制有 $2(n+m)$ 种: 当前行 / 列 $ t \to \ge t+1$ 当前行 / 列 $\ge t$ 每个位置上的限制是行列上的较大值,贡献是较小值。 $f[cur][i][j 阅读全文
posted @ 2019-10-06 23:34 jerome_wei 阅读(534) 评论(0) 推荐(0)
摘要: 有这样一段两两求最大公约数的程序CoGcd, 给出m的值,进行t次询问,每次询问包含一对xi,yi。针对每次询问,输出整个程序执行过程当中,Gcd(xi, yi)被执行了多少次。 例如:$m = 20$, $Gcd(8,5)$会被执行4次,对应的x, y值是 (8,5) (5,8) (13,8) ( 阅读全文
posted @ 2019-10-04 22:49 jerome_wei 阅读(388) 评论(0) 推荐(0)
摘要: 挺好玩的一场比赛。 "链接" A 打表,打到$2e4$左右会发现有一个长度$104$的循环节。 c++ include using namespace std; int col[5010][5010]; int dx[4] = {1,0, 1,0},dy[4] = {0,1,0, 1}; long 阅读全文
posted @ 2019-10-04 22:47 jerome_wei 阅读(240) 评论(0) 推荐(0)
摘要: Task 0 判断有多少条相同边即可。 复杂度$O(N)$ cpp namespace Subtask1{ pair e1[N],e2[N]; void Main(int n,int y){ for(int i=1,u,v;i (min(u,v), max(u,v)); } for(int i=1, 阅读全文
posted @ 2019-09-27 15:58 jerome_wei 阅读(213) 评论(0) 推荐(0)
摘要: "链接" 原题条件相当于是$a$是一个排列,每种排列出现概率随机。 考虑从$1\to n$插入排列中,容易观察到只要后面还有空位,那么前缀一定是相连的。 由这个过程可以观察到一些性质: 连通块是一段区间 相邻连通块的最大最小值区间不交(即:合并只有一种方案) $F(x)$是长度为$i$的排列组成一个 阅读全文
posted @ 2019-09-24 21:11 jerome_wei 阅读(240) 评论(0) 推荐(0)
摘要: 相邻的相等串直接当成一个串。 不妨设$A\le B,A\le C$ 考虑$A$选哪些已经确定的时候,如何调整$B$和$C$。 把不用的$A$提出去之后再合并一下形成串$T$。不难发现$A\le B, A\le C$仍然成立。 1. $B=C$的情况 我们直接删除连续的$BC$串即可。 容易证明一定能 阅读全文
posted @ 2019-08-25 15:13 jerome_wei 阅读(418) 评论(0) 推荐(0)
摘要: "Link" 简要题意: 给字符集大小和串长,求border个数的平方的期望 $n\le 1e5$ 基本的转化就不说了,现在需要对一对$i,j$求他们都是$border$的方案数。 $i$是一个$border$ $\Leftrightarrow$ $n i$是一个循环节(可以超出) 同时我们可以知道 阅读全文
posted @ 2019-08-22 15:18 jerome_wei 阅读(240) 评论(0) 推荐(0)
摘要: "link" 简要题意: 给一颗$n$个点的二叉树, ,每个点有$a[i]$个果实,有$m$次操作,每次在$u\to v$(保证$u$是$v$的祖先)中取不超过$c$个果实,每取一个贡献$w$的收益 首先可以暴力建边然后费用流。考虑优化,有一种显然的贪心策略:按照$w$从大到小依次尽量选最多,判断可 阅读全文
posted @ 2019-08-16 22:01 jerome_wei 阅读(394) 评论(0) 推荐(0)
摘要: 考虑除开$1 k$以外的任意点$d$在长度为$k 1$的链上有: 对于任意$i,i+1 (i\in "1,k 1])$,$col[d][i]+col[d][i+1" p (a或a+1) q p,q,r p a,q a r a+1 cpp include include "graph.h" using 阅读全文
posted @ 2019-08-12 16:06 jerome_wei 阅读(254) 评论(0) 推荐(0)