2024.7 #2 幻想现实交映辉耀 朝向命运刻下惊叹号 要我 的骄傲 随生命喧嚣

幻想现实交映辉耀
朝向命运刻下惊叹号
要我 的骄傲
随生命喧嚣


T1.CF452F Permutation

先抛出一个结论对于固定的 \(i,a\)\(i + 2^a \times k\)\(i - 2^a \times k\) 在同一侧。

那么既然 \(k\) 是一步一步向外扩展的,那么这个东西一定是前缀或者是后缀。而我们要判断的相当于是,对于每个 \(i\)\(a\),是否这些前缀或后缀上的数的下标是否都大于或都小于 \(i\) 的下标,并且这些数都是 \(\mod 2^{a+1}\) 的同余类。然后我们就可以枚举 \(a\)。接着处理这些前缀与后缀上的数的下标的最大值和最小值,然后进行判定即可。


T2. CF1924D Balanced Subsequences

我们定义 \(c_i\) 为加入第 \(i\) 个字符后还需要匹配的左括号的数目。

  • 若第 \(i\) 个是左括号,\(c_i = c_{i - 1} + 1\)

  • 否则当 \(c > 0\) 时,\(c_i = c_{i - 1} - 1\)

那么没有计入答案的右括号总共有 \(m−k\) 个,即经过此次操作 \(c\) 仍然保持 \(0\) 不变。如果这个时候选择了 \(-1\),那么之后的 \(c_j\) 都要 \(-1\)。转换一下可得 \(c_j = \min^n_{i = 1} = k - m\)

然后我们将 \((i,c_i)\) 放到平面上,那么就等同于:

  • \((0,0)\)\((n + m,n - m)\),每一次向右上或者右下走一格。

  • 路径经过 \(y = k − m\),且 \(\min^n_{i = 1}c_i = k - m\)

但是我们可以把整一个平面旋转 \(45\) 度。

那么就变成了

  • \((0,0)\)\((n,n)\),每一次向右或者上走一格。

  • 路径经过 \(y = (k − m) + x\),且不能经过这个函数的右边。

第二条可以转化为经过直线 \(y = (k - m) + x\) 的路径数 - 经过直线 \(y = (k - m) + x - 1\) 的路径数。

对于一条直线的答案,我们直接把 \((n,m)\) 关于直线对称后到了 \((n_2,m_2)\),然后答案就转化为 \((0,0)\)\((n_2,m_2)\) 的路径数了。

那么最终的答案就是 \((^{n + m}_{k}) - (^{n + m}_{k - 1})\)


T3.[ABC290F] Maximum Diameter

神仙题目。

我们只需要考虑 \(\sum a_i = 2n - 2\) 并且 \(a_i > 0\) 的序列即可。

先考虑最大化树的直径,假如说 \(a\) 中有 \(k\)\(1\),即最后的树上一共有 \(k\) 个儿子节点,那么我们只需要把剩下的 \(n - k\) 个点排成一条链,然后再向两端加上两个叶子节点,剩余的叶子节点补到链上度数不够的节点。这样子直径的长度就是 \(n - k + 1\)。然后我们考虑怎么计数。枚举 \(k\),那么叶子节点的选择方案数显然为 \(\dbinom nk\)。如此一来剩下的节点的度数和就是 \(2n - 2 - k\),剩下的节点数就是 \(n - k\)。那么就相当于把 \(2n - 2 - k\) 个球放到 \(n - k\) 个盒子里面,并且每一个盒子至少有 \(1\) 个球。那么其数量就为:

\[\dbinom {(2n - 2 - k) - 2(n - k) + (n - k) - 1}{(2n - 2 - k) - 2(n - k)} = \dbinom {n - 3}{k - 2} \]

那么在乘上链的长度,最终的答案就是 \(\sum^n_{i = 1}\dbinom nk \dbinom {n - 3}{k - 2} (n - k + 1)\),但是这个东西求一次要 \(O(n)\) 的复杂度,难以接受。

在继续化简的前面,我们需要了解两个式子:

  • 吸收恒等式:\(k \dbinom nk = n \dbinom {n-1}{k-1}\)

  • 范德蒙卷积:\(\sum_{k = 0}^{k} \dbinom ni \dbinom {m}{k - i} = \dbinom {n+m}k\)

上面两个都很好证明,在这里就不给证明了。然后就可以对于上面的式子进行化简了。

\[\begin{array}{l} \sum^n_{k = 1} \dbinom nk \dbinom {n-2}{k-2} (n - k + 1)\\= -\sum^n_{k = 1} \dbinom nk \dbinom {n-2}{k-2} (k - 2 + 1 - n)\\= -\sum^n_{k = 1} \dbinom nk \dbinom {n-2}{k-2} (k - 2) + (n - 1) \sum^n_{k = 1} \dbinom nk \dbinom {n-2}{k-2}\\= (n - 1) \sum^n_{k = 1} \dbinom nk \dbinom {n-2}{k-2} -(n - 3) \sum^n_{k = 1} \dbinom nk \dbinom {n-4}{k-3}\\= (n - 1) \sum^n_{k = 1} \dbinom nk \dbinom {n-3}{n - k - 1} -(n - 3) \sum^n_{k = 1} \dbinom nk \dbinom {n-4}{n-k-1}\\= (n - 1) \dbinom {2n-3}{n-1} - (n-3)\dbinom {2n-4}{n-3} \end{array} \]

然后这样子就可以 \(O(1)\) 求出答案了。


T4. CF1267G Game Relics

我们的一个最优选项是,能抽卡的抽卡,不能抽出来的就去买。假如说我们当前有了 \(i\) 张牌,那么抽出下一张牌就要抽 \(\dfrac{n}{n - i}\) 次。

除了最后一次之外,其他的次数都可以让我们获得 \(\dfrac{x}{2}\) 的回馈,最后一次消耗 \(x\) 获得新卡,则期望消耗 \((\dfrac{n}{n - i} - 1) \times \dfrac{x}{2} + x\)

接着寻找抽卡与买的分界线。考虑把所有直接购买的花费均摊到每次之中。然后我们此时已有的价值为 \(w_1\),价值总和为 \(w\),那么单次消耗 \(\dfrac{w - w_1}{n - i}\)。那么判定条件就是: \(\dfrac{w-w_1}{n - i} < (\dfrac{n}{n - i} - 1) \times \dfrac{x}{2} + x\)

然后我们设 \(a_{i,j}\) 为选了 \(i\) 张牌,已经有了价值为 \(j\) 的事件。\(dp_{i,j}\) 为其组合数量,那么答案就是 \(\dfrac{dp_{i,j}}{\dbinom{n}{i}}\)

posted @ 2024-07-17 11:13  sqrtqwq  阅读(6)  评论(1编辑  收藏  举报