2025省选14节日
前言
- 孩子是最菜的,傻傻数不明白,哎,救救孩子吧
题目简述
- 有一个国家每年有 \(n\) 天,每年都会选择一个 \(1\) 到 \(n\) 的数,并把那天设为休息日,若一个工作日前一天,后一天都是休息日,那么这个工作日也会被设为休息日,前后关系我们认为成环。
- 若某一年工作日小于等于 \(m\) 那么这个国家就瘫痪了。每年都有一个权值为工作日天数的 \(t\) 次方。
- 求这个国家在瘫痪之前每年权值和的期望。
题解
-
嗯,先考虑 \(dp_{i}\) 表示某一年有 \(i\) 个工作日的概率,答案的话就是 \(dp_i\times \frac{n}{i}\times (n-i)^t\)
-
解释一下,从 \(i\) 个工作日,新增一个保持工作日的概率为 \(\frac{i}{n}\),我们有期望 \(\frac{n}{i}\) 天之后会新增一个休息日,故此天数 \(\times\) 权值。
-
额,但是 \(dp_i\) 好像好像转移不了啊,为什么,因为不知道休息日的具体位置,那枚举集合?本题显然有更好的方法,我们枚举段数,以及段数的具体长度可重集合 \(s\)。
-
于是我们设 \(dp_{i,s}\) 表示有 \(i\) 个工作日,休息日被划分为了 \(|s|\) 段。
- 首先明确几个观点。
- 每一个休息日段,两个端点再往外的端点一定是工作日,且再往后也一定是工作日。

- 如图所视,每个矩形都是休息日段,每个圆形都是休息日,显然我们可以吧 两个红圆和蓝色矩形,也就是绿色划线部分视作一个整体。
-
而这样 \(dp\) 的正确性呢?
- 每一个长度为 \(len\) 的段构造出来的概率,只由其相对位置决定,故此,每个段的位置并不重要。这里的段是只绿线部分。
-
我们尝试对 \(dp\) 转移。
-
设 \(x=i-2j\) 表示所有蓝色圈的数量,这里 \(j=|s|\)
-
我们怎们转移,一个自然的想法,就是通过 \(s\) 构造出若干个枚举位置集合的状态 \(t\) 然后考虑 \(t\) 对 5 种情况的转移,5 种情况之后再说。这样的话我们需要,所有 \(t\) 的能对 5 种情况转移的数量,乘一下选择新的休息日的概率。
-
这里时间复杂度非常大,重点在于我们需要对着 \(s\) 枚举 \(t\)。那如何不枚举 \(t\) 呢,我们可以直接考虑所有 \(s\) 分别对 5 种情况的转移数量。
-
自认本本题最神奇的地方,也是统计转移数量。
-
每个转移的概率肯定相同吧,因为都是再找一个新的休息日的概率。那么对于 \(5\) 种情况的划分的概率系数就是,目前转移方案数/总转移数。
-
总转移数如何计算? \(\binom{x+j}{x}\) 分配矩形和圆的位置,\(\binom{\sum len}{len_1,len_2,len_{j}}\) 依据长度相同的同构分配矩形的具体长度,这样的话集合就分配完啦,那么转移呢?我们枚举下一个工作日化为休息日是那一天,有 \(n-i\) 个。故此总转移方案数 \(\binom{x+j}{x}\binom{\sum len}{len_1,len_2,len_{j}}i\)
-
我们设 \(F(x,y)=\binom{x+y}{x}\)
-
情况一,我们新增一个段 \(F(x-3,j)\) 选择三个蓝色圆,什么意思钦定三个连续的蓝色圆置于 \(1,2,3\) 处,接着枚举剩下位置的方案,但是我们是一个环,所以一个三个连续蓝色圆还可以位于 \((234),(345),(n,1,2)\) 所以共 \((x+j)\) 种方案。对了同理还要枚举 \(\binom{\sum len}{len_1,len_2,len_{j}}\) 分配具体的段。
-
合起来
-
情况一的转移数量:\((x+j)\binom{\sum len}{len_1,len_2,len_{j}}F(x-3,j)\)
-
类似的我们有:
-
一个段长加 \(1\) \((x+j)\binom{\sum len}{len_1,len_2,len_{j}}2F(x,j-1)\)
-
一个段长度加 2 \((x+j)\binom{\sum len}{len_1,len_2,len_{j}}2F(x-1,j-1)\)
-
合并两个段 \(2(x+j)\binom{\sum len}{len_1,len_2,len_{j}}F(x,j-2)\)
-
合并两个段加一个蓝色的圆 \((x+j)\binom{\sum len}{len_1,len_2,len_{j}}F(x-1,j-2)\)
-
诶到这里其实可以发现概率还要除 \(\binom{x+j}{x}\binom{\sum len}{len_1,len_2,len_{j}}i\),而且转移个数只和和段有关
-
那们尝试不枚举 \(dp_{i,s}\) 了 从而枚举 \(dp_{i,j=|s|}\),进一步解释,其实 \(dp_{i,j}\) 是把 \(s\) 不同的,但 \(|s|=j\) 的视为若干转移等价的组一起转移。
-
除一除,约一约
-
设 \(P=dp_{i,j}\frac{x+j}{\binom{x+j}{x}i}\)
-
\(dp_{i-1,j+1}=PF(x-3,j)\)
-
\(dp_{i-1,j}=2PF(x-1,j-1)\)
-
\(dp_{i-2,j}=2PF(x-2,j-1)\)
-
\(dp_{i-2,j-1}=2PF(x,j-2)\)
-
\(dp_{i-3,j-1}=PF(x-1,j-2)\)
-
哎终于结束了。
后言
- 枚举转移的数量真的还是头一次见呢!

浙公网安备 33010602011771号