首页 > 其他分享 >01.22 ARC170 题解慢报

01.22 ARC170 题解慢报

时间:2024-01-23 10:44:07浏览次数:29  
标签:度数 慢报 一个点 01.22 题解 ARC170 tag 邻居

补完了,来发题解慢报。AB 就不写了。

C Prefix Mex Sequence

考虑 DP,\(f(i,j)\) 表示前 \(i\) 个数,填了 \(j\) 个不同的数。如果 \(s_{i+1}=1\) 那么这位唯一确定,只需要保证 \(j<m\) 即可转移到 \(f(i+1,j+1)\);如果 \(s_{i+1}=0\) 那么可以选旧的数也可以选新的数,分别转移即可。

D Triangle Card Game

这场的 D 和 F 一个德行。都是难度不高但是很恶心的题。

考虑枚举 Alice 选择的数。对于选择的 \(a_i\),Bob 可以赢当且仅当存在一个 \(b_j\) 使得不存在 \(a_k (j\neq i)\) 使得 \(a_i+a_k<b_j\),\(a_i-b_j<a_k\) 且 \(a_k-b_i<a_i\)。分情况讨论:对于 \(b_j<a_i\) 的,实际上取 \(j=1\) 一定最优,直接判即可;对于 \(b_j>a_i\) 的,实际上就是要求出对于 \(k\neq i\),\(|a_k-b_j|\) 的最小值。预处理时前后扫两遍,记录最小和次小即可。

E BDFS

考虑如下序列:每次出栈的时候记录其是从左边过来的还是右边过来的。如果序列相邻元素不同那么概率为 \(1-p\) 否则为 \(p\)。记两个的数量分别为 \(x,y\),那么贡献为 \(x(x+1)/2+y(y+1)/2\),考虑平方的组合意义后直接 DP 然后矩阵快速幂即可。

F Edge Deletion

考虑直接贪心模拟。我们对于一个点上,可以动态地打一个 tag \(t\) 表示“这个点的最小邻居是谁尚未确定,但是最小邻居的赋权为 \(t\)”,并在一个点可以确定的时候进行删边和删 tag。然后每次到一个点,首先判能否为 \(0\):即要么其为孤立点,要么其度数为一且邻居点上还有 tag。然后有三种取值情况:取邻居的确定的点,取和其隔着一个点的 tag(也就是给跨国的那个点确定值为 \(t\)),或者新取一个值。第一种情况需要满足这个邻居没有 tag 或者度数 \(>1\),第二种情况需要满足这个邻居没有 tag 或者度数 \(>2\),第三种情况就直接打 tag。为了处理第二种情况,我们需要维护集合 \(S\) 表示其邻居的所有 tag,这是容易维护的。

其实画画图就很明了了。就是有若干细节。

标签:度数,慢报,一个点,01.22,题解,ARC170,tag,邻居
From: https://www.cnblogs.com/TetrisCandy/p/17981833

相关文章

  • 「Daily OI Round 1」block 题解
    设\(c_u\)表示节点\(u\)的颜色,\(f_u\)表示只考虑原树中\(u\)的子树中的点、选择点\(u\)的方案数。对于儿子\(v\),可以选择同色儿子节点,也可以跳过这个儿子节点,选择\(v\)的与\(u\)同色的儿子节点\(w\),故状态转移方程为:\[f_u=\prod[c_u=c_v]f_v+\left(\prod[c_u=c_w]......
  • CF1424M Ancient Language 题解
    1.题意描述一本字典中有\(r\)\((1\leqr\leq10^6)\)个单词,单词长度不超过$10^3$,所有字母都是小写英文字母,但字母排序不是按英文字母排序,求所有出现字母的一种排序,如果不存在,输出"IMPOSSIBLE"。2.题目分析由排序规则可知,对于字符串\(s\)和\(t\),\(s\)排在\(t\)......
  • CF618C Constellation 题解
    题意描述给定\(n\)个点(\(n\leq10^5\)),找到三个点满足这三个点不在同一直线上且三个点构成的三角形中不包含其他点,保证所有点不会在同一直线上。题目分析首先必然每一个点都可以作为一组解中的点。不妨其中一个点编号为\(1\)。找一个点作为第二个点,为了使没有点在这条边上,这......
  • CF1036F Relatively Prime Powers 题解
    题目分析对于一个不合法的数\(x(x\ge2)\),设\(x=\prodp_i^{r_i}\),令\(g=\gcd(r_1,r_2,\ldots,r_k)\),则\(x=\left(\prodp_i^{r_i/g}\right)^g\),所以\(x\)是一个正整数的\(g\)次方。所以可以枚举上文的\(g\),把每一类不合法方案排除掉,就是答案。设\(f(i)\)表示\(2\)......
  • AT_arc098_d Donation 题解
    一道在kruskal重构树上DP的题。首先,捐钱比较难想,可以反过来思考倒着走领钱的思路。显然,在第一次经过一个节点的时候领钱是最优的,对于节点\(i\),令\(c_i=\max\{a_i-b_i,0\}\),若当前的钱数是\(v\),到节点\(i\)的条件是\(v\gec_i\),如果不满足则把\(v\)补充到\(c_i\),同......
  • P5618 SDOI2015 道路修建题解
    题目分析虽然数据范围只有\(n\le60000\),但是完全可以直接用线段树做。首先考虑那种状态的图在左边和右边加入节点和边之后可以连通。容易发现,这种图有这两个性质:至少有一条路径,经过最左端和最右端中的点。所有点至少和最左端和最右端的点连通。于是可以划分成以下几种状态......
  • [ARC155C] Even Sum Triplet 题解
    一道大分类讨论。如果有一个可以交换的段包含奇数,那么你可以把所有奇数移到最左边并任意调整相对顺序,然后回到任意一种有一个可以交换的段包含奇数的状态。这种情况,如果偶数的数量为\(2\),这两个偶数是不能交换相对位置的,有至少\(3\)个偶数就能交换偶数间相对位置。所以只需要......
  • P7618 [COCI2011-2012#2] FUNKCIJA 题解
    看起来比较复杂,但实际上是一个树上dp的模型。因为每一重循环都最多有一个依赖,可以转化为树上的父子关系,于是就形成了一个森林。对于非叶子节点,设\(f_{u,i}\)表示第\(u\)循环变量的值是\(i\)时所有直接或间接依赖于它的循环变量(即以它为根的子树除开它的部分)循环次数,对非......
  • ARC170F Edge Deletion 2
    某人竟然忘记了星期天晚上有\(\text{ARC}\),我不说是谁。首先选择最小点删除和最小字典序都是最小化,所以可以弱化最小点删除的限制,现在原问题就变成了可以删除任意一个点的出边,如果没有出边则为\(0\)(这个其实本题中是最优的策略)。如果每一个点向其删除的出边连边,先考虑它会形......
  • AT_arc170_d Triangle Card Game
    当Alice先出了一张牌\(A\),Bob又出了一张\(B\),分类讨论一下。当\(B\leqA\),如果Alice不再出一张\((A-B,A+B)\)中的牌Bob就赢了,所以这种情况Bob会出最小的牌。当\(B>A\),如果Alice不再出一张\((B-A,B+A)\)中的牌Bob就赢了,这时无法贪心,对每个\(B_i\)考虑,找到......