摘要: 考虑枚举选出来 $i$ 个**没气**的篮球,那么答案可以表示成: $$\text{ans}=\frac{1}{\dbinom{n}{k}}\sum\limits_{i=0}^{k}\dbinom{m}{i}\dbinom{n-m}{k-i}i^L$$ 注意到这里的组合数 $\dbinom{n}{m 阅读全文
posted @ 2023-07-20 21:26 Ender_32k 阅读(91) 评论(0) 推荐(0) 编辑
摘要: 这里只讲[加强版](https://www.luogu.com.cn/problem/CF280D),这是严格弱化。 结论是贪心。每次取出最大和连续子段,目前答案加上这个子段和,然后再把这个子段取反(相反数T),然后求整个过程答案的最大值。 考虑费用流模型。对于 $i\le n$,$S\to i$ 阅读全文
posted @ 2023-07-20 18:42 Ender_32k 阅读(4) 评论(0) 推荐(0) 编辑
摘要: 小清新斜率优化题。 分段问题显然 dp,令 $f_i$ 为将第 $1$ 根柱子和第 $i$ 根柱子连接的最小代价。$f_1=0$,每次枚举 $i$ 向前直接连接的柱子: $$f_{i}=\min\limits_{j=1}^{i-1}\left\{f_j+(h_i-h_j)^2+\sum\limits 阅读全文
posted @ 2023-07-20 18:39 Ender_32k 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 首先先证明几个引理。 - $\text{Lemma \#1}$: > 长度为 $1$ 的线段上**随机**取 $n-1$ 个点,将其分成 $n$ 段,长度最短段的长度期望为 $\dfrac{1}{n^2}$。 证明: 我不知道能不能 $\text{Min-Max}$ 容斥,但有更简单的做法。 假设最 阅读全文
posted @ 2023-07-20 18:38 Ender_32k 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 简单题。 $i$ 向 $i$ 后**第一个** $j$,$a_j$ 比 $a_i$ 大的点连边,不难发现最后形成了一棵森林,并且一个点的父亲 $\text{fa}_i>i$。 题目变成了取 $[l,r]$ 中的点为起点,向祖先方向走去并且终点编号 $\le r$ 的最长链长度。 考虑离线,维护从每个 阅读全文
posted @ 2023-07-20 18:38 Ender_32k 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 简单题。 先把树拍扁成序列,在 dfn 序上区间修改区间查询。 由于时限 4s,我们可以整点怪的,比如 `bitset`。 把区间内的数有/没有表示成 $01$ 序列,考虑到区间加取模相当于区间内的数全部**循环右移**,用 `bitset` 可以做到 $O(\frac m \omega)$。 然后 阅读全文
posted @ 2023-07-20 18:35 Ender_32k 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 简单题,不知道为啥和[弱化版](https://codeforces.com/problemset/problem/526/F)一个 Difficulty。 考虑弱化怎么做。 区间 $[l,r]$ 中的数是连续的,当且仅当区间最大值 $\max$ 减去区间最小值 $\min$ 为 $r-l$,即 $ 阅读全文
posted @ 2023-07-20 18:35 Ender_32k 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 不难发现答案 $\le 15$,极限的情况大概就是 $aabbcc\cdots gghh$,此时跳一步和走一步等效。 这启示我们固定点 $i$,统计 $d(i,j)=D,j15$ 的贡献。 为了方便,以下称从 $i$ 到 $i+1$ 或 $i-1$ 为「走」,在相同颜色的点之间移动为「跳」。对于既可 阅读全文
posted @ 2023-07-20 18:34 Ender_32k 阅读(10) 评论(0) 推荐(0) 编辑
摘要: 想复杂了…… 这种分到两边的问题,考虑建立费用流模型,建立两个点 $A,B$ 表示分到 $A$ 的数或者分到 $B$ 的数: - $S\to A$,流量 $p$,费用 $0$。 - $S\to B$,流量 $s$,费用 $0$。 - $A\to i\in[1,n]$,流量 $1$,费用 $a_i$。 阅读全文
posted @ 2023-07-20 18:34 Ender_32k 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 列出转移方程就是傻鸟题了,具体地,令 $f_{i,j}$ 为前 $i$ 球取出 $j$ 组的方案数,有: $$f_{i,j}=f_{i-1,j-1}+f_{i-1,j}+f_{i-2,j-1}$$ 列出 $f_{i}$ 的 GF $F_i(x)$: $$F_i(x)=F_{i-1}(1+x)+F_{ 阅读全文
posted @ 2023-07-20 18:32 Ender_32k 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 为数不多不用多项式科技的单位根反演题。 $A$ 不降比较难搞,所以首先令 $B_i=A_i+i-1$,则 $B$ 单调递增。转化为对任意的 $k\in [0,\text{MOD}-1]$,求在 $[0,N+M-1]$ 中选 $N$ 个**不同**的数,总和对 $\text{MOD}$ 取模为 $k$ 阅读全文
posted @ 2023-07-20 18:32 Ender_32k 阅读(13) 评论(0) 推荐(0) 编辑
摘要: 煎蛋提。 不妨令 $g(i)=(-1)^{f(i)}$,由 $f(i)$ 的和性不难推出 $g(i)$ 为**完全积性函数**,因此可以考虑杜教筛。 考察 $g(n)$ 和恒等函数 $I(n)=1$ 的卷积 $g*I$,不难发现 $(g*I)(p^k)=\sum\limits_{i=0}^kg(p^ 阅读全文
posted @ 2023-07-20 18:30 Ender_32k 阅读(9) 评论(0) 推荐(0) 编辑
摘要: 题目中说 $n$ 个点的无向完全图有 $\frac{n!}{2}$ 条哈密顿路径。如果我们考虑方向(即每条路径钦定起点终点)的话,一共就有 $n!$ 条了,因为一条路径 $(u,v)$ 可以钦定 $u\to v$ 或 $v\to u$。为了方便符号表达,**以下都按照哈密顿路径数为 $n!$ 即路径 阅读全文
posted @ 2023-07-20 18:29 Ender_32k 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 先考虑只能放**整点**的情况,不难想到考虑 dp。 对于环上的 dp,考虑**断环成链**,即钦定一条线段的左端点为**起点**。这里我们令长度**最长**的线段的左端点为环的起点。 这样做有一个好处:我们不用考虑**一条线段把环末尾覆盖再覆盖开头的空**的情况,而当我们钦定一个长度较小的线段作为 阅读全文
posted @ 2023-07-20 18:28 Ender_32k 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 考虑一个**横向**单调数列 $a<b<c$ 如何形成,我们**从小到大**填数,填到 $b$ 时,假设 $b$ 填在 $(x,y)$ 处:若 $(x,y-1),(x,y+1)$ 两个格子上**恰有一个位置有值**就寄了。纵向的单调数列类似。 于是填数的过程中,我们只关心每个格子上有/没有数。如果这 阅读全文
posted @ 2023-07-20 18:27 Ender_32k 阅读(5) 评论(0) 推荐(0) 编辑
摘要: 应该是最简单的做法,同时也是 AT 官方题解做法。 考虑计算 $\min\sum\limits_{1\le i\le j\le n}|a_i-a_j|$,乘二即为答案。 考虑 $n$ 个线段中使 $l_x$ 最大的 $x$ 以及使 $r_y$ 最小的 $y$。 - 若 $l_x\le r_y$,那么 阅读全文
posted @ 2023-07-20 18:27 Ender_32k 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 一个 $O(n^3\log n)$ 的做法。 我们考虑枚举在环上连向外部的那个点 $u$,然后再在点集 $\{1,2,\cdots u-1,u+1,\cdots n-1,n\}$ 的导出子图中跑 Floyd,枚举 $u$ 在环上相邻的两个点 $x,y$,答案就是 $d_{x,y}+w_{x,u}+w 阅读全文
posted @ 2023-07-20 18:26 Ender_32k 阅读(11) 评论(0) 推荐(0) 编辑
摘要: 拉插优化 dp 在卷怪们眼里已经变成套路了吗,害怕。 考虑一个 dp 的推。设 $f_{u,i}$ 表示 $u$ 子树中填 $[1,i]$ 符合题目条件的方案数,此时不强制 $u$ 选 $i$,所以有: $$f_{u,i}=f_{u,i-1}+\prod\limits_{v\in \text{son 阅读全文
posted @ 2023-07-20 18:26 Ender_32k 阅读(6) 评论(0) 推荐(0) 编辑
摘要: ### Description 给定 $N,M$,求对于所有 $N$ 个点的,满足恰有 $M$ 条从小连向大的边,即 $\sum\limits_{(u,v)\in E}[u 给竞赛图每个 SCC (强连通分量)缩点后,剩下的是由一条**极长**的链与某些前向边组成的图。 于是 SCC 的数量能够转换 阅读全文
posted @ 2023-07-20 18:26 Ender_32k 阅读(34) 评论(0) 推荐(0) 编辑
摘要: 参考官方题解。 你发现这个覆盖不太好考虑,考虑时间倒流,变成如下形式: > 一开始,小 A 的位置上有一个数 $a_n$,然后对于接下来 $n-1$ 步,每次小 A 可以向左走/向右走/不动,然后如果此时小 A 所站的位置上**没有数**,就写上 $a_i$,求最后形成序列的最长上升子序列长度。 考 阅读全文
posted @ 2023-07-20 18:25 Ender_32k 阅读(5) 评论(0) 推荐(0) 编辑