自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(9)
  • 收藏
  • 关注

原创 AtCoder Beginner Contest 329G题解

解答:可以看出,从根节点出发,方案数就是左子树走法乘上右子树走法+右子树走法乘上左子树走法,但是需要看到如果左子树有邮包需要从右子树运过来,那就必须先走右子树,同理左子树。1.lca(s,t)=s s往t方向子树走时要带上这封邮件(即邮件数量+1),t的父亲往t走时完成运送(邮件数量-1),然后我们枚举所有可行的走的顺序(先走右,先走左),根据该顺序来递归搜索更新答案。前期先预处理这些信息,后面搜索时用,要注意每一步搜索的合法性,中间若有任何一个时刻邮包数量>K都是不可行的。递归搜索的状态肯定是。

2023-11-28 12:06:34 78

原创 AtCoder Beginner Contest 328题解(F,G)

内元素关系确定,任意新元素与S中某个元素建立关系,则新元素与S中所有元素关系也就确定,于是想到并查集。判断并查集内元素是否相等可以找一个代表元,那就是树根,于是用带权并查集可以解决此问题。题意:两个长为N的序列A和B,你可以将A序列随意的切成若干子序列然后重排,代价是切成子序列个数-1+新序列。解答:最后A的形式是一段段子序列的联结,考虑把一个个子序列依次加入。考虑更新状态语句执行次数,若即将新加入的新序列长度为k,则共有。,靠前的关系优先满足,问有多少个关系可满足。题意:N个元素序列X,给Q个关系。

2023-11-13 22:24:18 128

原创 AtCoder Beginner Contest 327题解(F,G)

在y轴上建立线段树,按照x坐标从小到大顺序依次加入点(X,Y),即[Y-W,Y]区间加1,同时将x坐标已经离开区域的点(X,Y)删去,即[Y-W,Y]区间减1,这个操作相当于从左往右移动框,每次移动后查询区间最大值,更新答案。题意:N个点的图,要赋予它M条边(边带标号,同时每条边区分起点和终点),要求加完边后不存在奇圈,问有多少种加边方案。,f(N,k)为N个带标号点和k个无标号边简单二分图个数,b(M,k)为将M个带标号边分成k个不同集合的方案数,即为。记g(N,k)是N个点k个边的染色二分图个数,即。

2023-11-11 15:34:35 113 1

原创 AtCoder Beginner Contest 326题解(E,F,G)

那么问题就转化为规模为40的数列,问能否通过正负号组合为特定的数,但这个规模还是无法直接枚举。考虑二分的思想,将前20个数枚举所有组合,后20个数枚举所有组合,然后遍历前20个数的所有组合,找后20个数组合内有没有与这个组合合起来就是X/Y的。,枚举骰子投到i之前最后一个投到的数,可为0(i为第一个投到的数)题意:给定一个长为N的数列a,掷有N个面的骰子,若第i次掷到的数。题意:长为N的序列A初始均为1,给定长为N的序列C,代表每次。不满足要缴纳这么多罚金。元(初始时x=0),否则停止,问获得钱数的期望。

2023-10-31 17:47:49 124 1

原创 AtCoder Beginner Contest 325题解(D,F,G)

j],如果第一位是’o’,枚举它和串中哪个’f’结合(必须要可结合,即’o’和’f’之间的子串可被删成空串),若要结合的’f’下标为m,则答案是。题意:给定一个字符串S和整数k,每次可以从S中删除"of"后接0-k个字符的子串,问S能被删成最少剩几个字符。解答:可以看出在当前产线上的产品中,选择离开时间最早的产品喷漆总是最优的。解答:刚开始想的是贪心,即从后往前扫描,遇到o就尽量找f与其结合。,每次可以选择产线上的一件产品喷漆,消耗一个单位时间,问最多可以给多少件产品喷漆。也可以不和’f’结合,答案就是。

2023-10-24 16:42:45 168 2

原创 AtCoder Beginner Contest 324题解(F,G)

为了让移除大于某个数操作的erase操作最少,可以用两个set以对顶堆的形式维护中位数,若给定数大于中位数,则把原序列不断弹出最大的,若小于中位数,则交换两序列位置,不断弹出最小的元素给原序列的位置。题意:给定一个1-N的排列作为序列0,然后不断从此前某个序列中要么移除第k个元素之后的所有元素组成新序列,要么移除大于某个数的所有元素构成新序列。原操作相当于对序列不断的分拆,我们倒过来考虑对序列不断的合并,而且总让序列短的合并进序列长的,被合并的元素由于每次合并后所在序列长度增加一倍,最多被合并。

2023-10-17 17:52:24 78

原创 AtCoder Beginner Contest 323G 题解

有多少个生成树,由矩阵树定理,这个问题很好解答,直接算出图对应的Laplace矩阵,然后求行列式即可。不过这个问题中有一些边比较特殊,我们希望知道含k个这样的边的生成树的个数,那我们在计算Laplace矩阵时可以这样:对。如果在变换过程中已经乘了x多于n次,可以直接返回一个全零多项式,参考。题意:给定一个1-n的排列p,问有多少棵连接1-n节点的无向树,使得其中有k条边。但是算行列式并不是很简单的任务,我们把L看成常数矩阵和只含x的矩阵之和,解答:如果不加任何限制条件,就是求完全图。

2023-10-10 15:05:55 206 3

原创 AtCoder Beginner Contest 322G 题解

题意:对于一个数字串S,以不同的进制来看待会得到不同的值,现给定一个数X,问有多少个三元组(S,a,b)满足以a进制来看待S和以b进制来看待S的结果的差值为X(a>b且S中每一个数字都要小于b)。次b的取值,然后对每一个b和a,需要判断它们能否找到一个串S使得差值为X。现在观察到一个事实,即如果a和b能够找到一个串使差值为X,那么这个串是唯一的。,然后对每个(a,b)来分解X又需要执行约k次操作,考虑到k很小,最后复杂度是可以接受的。的枚举,可以发现大概总共枚举了X的所有约数的和个(a,b),量级是。

2023-10-06 22:19:50 160 1

原创 AtCoder Beginner Contest 321题解(C,F,G)

题意:N个元件,每个元件上面都有一些A口和B口,保证所有元件总共的A口和B口数目相同,均为M,现在随意用M根电线连接任意A口和B口(同一个元件上A口和B口也可以相连),问连完后形成的连通分量个数的数学期望。如图所示,一个元素回溯转移的过程会发现它实际上是三角元素和方块元素的和,由于我们想要消去+2的操作,方块元素是我们不希望转移到它身上的,我们想要减去方块元素,而方块元素会转移到。,这样当然会有重复计数,但是n个连通分量的连接方案就会计数n次,正是我们想要的。,这样的复杂度是可以接受的。

2023-09-26 18:58:20 182 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除