摘要:
[原题链接](https://atcoder.jp/contests/arc100/tasks/arc100_c) 不难发现我们可以处理出每个状态所有子集中 $a_i$ 的最大值和次大值,用一个 `pair` 维护,跑一遍 $\text{SOSDP}$,这时每个状态的权值就是最大值加次大值,最终输出 阅读全文
posted @ 2023-08-31 19:47
徐子洋
阅读(11)
评论(0)
推荐(0)
摘要:
原题链接 首先我们让 \(c_s\) 表示有多少 \(a_i\) 是 \(s\) 的超集,那么有:取与后是 \(s\) 的超集的集合个数 \(f_s=2^{c_i}\)(这里把空集也认为是 \(s\) 的超集,联系前后文,会发现这样其实不影响计数)。 再让 \(g_s\) 表示有多少集合取与后恰好是 阅读全文
posted @ 2023-08-31 19:46
徐子洋
阅读(19)
评论(0)
推荐(0)
摘要:
模板 求高维矩阵的前缀和 每个位置上存的是原来单点的值。 一维 点击查看代码 for (int i = 1; i <= n; i++) a[i] += a[i - 1]; 二维 容斥 点击查看代码 for (int i = 1; i <= n; i++) for (int j = 1; j <= n 阅读全文
posted @ 2023-08-31 19:43
徐子洋
阅读(137)
评论(0)
推荐(0)
摘要:
考虑霍尔定理和广义霍尔定理: 霍尔定理:对于一个左部图为 \(X\)、右部图大小为 \(Y\) 的二分图(钦定 \(|X|\leq |Y|\)),存在边数等于 \(|X|\) 的匹配的充要条件是:对于左部图的任何一个点集,右部图中和它相邻的点集大小都大于等于它(相邻的点集指的是所有点出边的并集)。 阅读全文
posted @ 2023-08-31 19:27
徐子洋
阅读(53)
评论(0)
推荐(0)
摘要:
[题目链接](https://codeforces.com/problemset/problem/1288/D) 看到题目中有很多 $\min,\max$,一眼二分答案。 考虑一个常见的套路:假设我们二分的值是 $mid$,那么我们在判断合法性时把数字矩阵变成 $01$ 矩阵:假若 $a_{i,j} 阅读全文
posted @ 2023-08-31 19:23
徐子洋
阅读(19)
评论(0)
推荐(0)
摘要:
[题目链接](http://codeforces.com/problemset/problem/1826/E "题目链接") 题意:给定一个物品序列。每个物品有 $m$ 种属性和一个收益(第 $i$ 个物品的第 $j$ 种属性为 $r_{j,i}$)。你需要从原序列中取出几个物品(可以乱序取),并给 阅读全文
posted @ 2023-08-31 16:02
徐子洋
阅读(17)
评论(0)
推荐(0)
摘要:
由于每个特工只会监视一个特工,我们判断出这是一颗基环树。 基环树的题目我们往往可以从序列以及树去入手。 考虑序列怎么做。此时存在显然的贪心策略,让 $1,3,5,7,\dots$ 这些位置的特工参与行动。对这个贪心加以分析,不难把它搬到基环树上去贪心——能选 $x$,就不去放弃 $x$ 选 $a_x 阅读全文
posted @ 2023-08-31 11:12
徐子洋
阅读(16)
评论(0)
推荐(0)