\(\mathscr{A}\sim\)「CF 1252G」Performance Review

  Link & Submission.


  Tag:「水题无 tag」

  记 \(A=a_1\), 对于任何其他的 \(a\), 我们只关心它与 \(A\) 的大小关系. 进一步, 任何一个时刻都可以用整数 \(k\) 记录, 其描述该时刻有 \(k\) 个 \(a<A\). 被裁员的条件就是 \(k<b_i\), 即 \(k-b_i<0\). 线段树维护 \(k-b_i\) 判断全局最小值是否 \(<0\) 即可. 复杂度 \(\mathcal O(q\log m)\).

\(\mathscr{B}\sim\)「CF 1515E」Phoenix and Computers

  Link & Submission. (这个题目编号念出来好可爱 w.)


  Tag:「A.DP-计数 DP」

  先说赛上的 \(\mathcal O(n^3)\) 做法. 注意到我们手动开启的电脑一定是若干段区间, 且相邻区间之间只有一个位置没被操作. 因此, 可以尝试对这些区间进行规划和计数.

  一方面, 设长度为 \(\ell\) 的区间的操作方案数为 \(g_\ell\), 显然我们不能跳着操作两台电脑, 否则这两台电脑中间必然有一台无法手动开启. 那么, 枚举第一次操作的位置, 可知:

\[g_\ell=\sum_{i=1}^{\ell}\binom{\ell-1}{i-1}=2^{\ell-1}.
\]

  接下来, 设 \(f(i,j,k)\) 表示考虑了前 \(i\) 个位置, 一共操作了 \(j\) 台电脑, 从 \(i\) 开始前面 \(k\) 台电脑是手动操作, 此时的总方案数 \(/j!\) 的值. 转移分第 \(i+1\) 个位置是否手动操作, 可知:

\[f(i,j,k)\cdot 2^{k-1}\overset{+}{\longrightarrow}f(i+1,j,0)~(k>0),\\
f(i,j,k)\cdot\frac{1}{k+1}\overset{+}{\longrightarrow}f(i+1,j+1,k+1).
\]

最后答案就是

\[\sum_{j,k>0}2^{k-1}j!f(n,j,k).
\]

可以做到 \(\mathcal O(n^3)\).

  然后呢 ... 受这个方法启发, 很自然地引入 GF. 令 \(F(x)=\sum_{i\ge1}\frac{2^{i-1}x^i}{i!}=(e^{2x}-1)/2\) 为 \(g\) 的 EGF, 那么

\[\begin{aligned}
\textit{ans} &= \sum_{k=0}^{(n-1)/2}\left[\frac{x^{n-k}}{(n-k)!}\right]F^{k+1}(x)\\
&= \sum_{k}2^{-k-1}\left[\frac{x^{n-k}}{(n-k)!}\right](e^{2x}-1)^{k+1}\\
&= \sum_{k}2^{n-2k-1}\sum_{i=0}^{k+1}\binom{k+1}{i}(-1)^{k+1-i}i^{n-k}
\end{aligned}
\]

可以随便 \(\mathcal O(n^2)\) 算了. 进一步加速的话 ... 没有什么结果 qwq.

\(\mathscr{C}\sim\)「CF 1654F」Minimal String Xoration

  Link & Submission & Solution (6.14)

\(\mathscr{D}\sim\)「CF 1710D」Recover the Tree *

  Link & Submission.


  Tags:「A.构造」「C.思维」

  赛上给了一个强提示性但因为我的错解恰好能跑对, 所以没有被我重视的 subtask ...

  考虑一个特殊情景: \([l,r]\) 连通当且仅当 \(l=1,r=n\) 或者 \(l=r\). 这里给出一个构造:

  接下来考虑一般情况. 注意到一个结论: 对于 \(\ell_1\le \ell_2\le r_1\le r_2\), 若 \([\ell_1,r_1],[\ell_2,r_2]\) 都连通, 那么 \([\ell_2,r_1]\) 和 \([\ell_1,r_2]\) 也都连通. 因此, 原图可以被划分为若干个极大的连通区间. 对于区间内部归纳构造; 在区间之间, 我们需要将它们连通而不产生任何新的连通块, 此时直接使用特殊情景的构造方法即可. 复杂度 \(\mathcal O(n^2)\).

Solution Set -「NOIP Simu.」20221005的更多相关文章

  1. 「NOIP 2017」列队

    题目大意:给定一个 $n times m$ 的方阵,初始时第 $i$ 行第 $j$ 列的人的编号为 $(i-1) times m + j$,$q$ 次给出 $x,y$,让第 $x$ 行 $y$ 列的人 ...

  2. 「NOIP 2020」微信步数(计数)

    「NOIP 2020」微信步数(Luogu P7116) 题意: 有一个 \(k\) 维场地,第 \(i\) 维宽为 \(w_i\),即第 \(i\) 维的合法坐标为 \(1, 2, \cdots, ...

  3. Diary / Solution Set -「WC 2022」线上冬眠做噩梦

      大概只有比较有意思又不过分超出能力范围的题叭.   可是兔子的"能力范围" \(=\varnothing\) qwq. 「CF 1267G」Game Relics   任意一个 ...

  4. Solution Set -「ARC 107」

    「ARC 107A」Simple Math   Link.   答案为: \[\frac{a(a+1)\cdot b(b+1)\cdot c(c+1)}{8} \] 「ARC 107B」Quadrup ...

  5. 「NOIP 2013」 货车运输

    题目链接 戳我 \(Solution\) 这一道题直接用\(kruskal\)重构树就好了,这里就不详细解释\(kruskal\)重构树了,如果不会直接去网上搜就好了.接下来讲讲详细过程. 首先构建\ ...

  6. Solution Set -「ABC 217」

      大家好屑兔子又来啦! [A - Lexicographic Order]   说个笑话,\(\color{black}{\text{W}}\color{red}{\text{alkingDead} ...

  7. Note -「动态 DP」学习笔记

    目录 「CF 750E」New Year and Old Subsequence 「洛谷 P4719」「模板」"动态 DP" & 动态树分治 「洛谷 P6021」洪水 「S ...

  8. Note -「Lagrange 插值」学习笔记

    目录 问题引入 思考 Lagrange 插值法 插值过程 代码实现 实际应用 「洛谷 P4781」「模板」拉格朗日插值 「洛谷 P4463」calc 题意简述 数据规模 Solution Step 1 ...

  9. Solution -「ARC 104E」Random LIS

    \(\mathcal{Description}\)   Link.   给定整数序列 \(\{a_n\}\),对于整数序列 \(\{b_n\}\),\(b_i\) 在 \([1,a_i]\) 中等概率 ...

  10. LOJ #2026「JLOI / SHOI2016」成绩比较

    很好的锻炼推柿子能力的题目 LOJ #2026 题意 有$n$个人$ m$门学科,第$ i$门的分数为不大于$U_i$的一个正整数 定义A「打爆」B当且仅当A的每门学科的分数都不低于B的该门学科的分数 ...

随机推荐

  1. LeetCode题目练习记录 _数组和链表02 _20211008

    LeetCode题目练习记录 _数组和链表02 _20211008 11. 盛最多水的容器 难度中等2834 给你 n 个非负整数 a1,a2,...,a``n,每个数代表坐标中的一个点 (i, ai ...

  2. github/gitee个人博客到底是什么一个运行原理?

    本文主要讲的是GitHub.Gitee这样的代码存储网站上提供的个人博客建站的原理分析,需要注意的是,本文并不介绍GitHub.Gitee上建立个人blog的操作步骤,本文只介绍原理,不介绍实操步骤. ...

  3. 经典强化学习算法:分层强化学习算法—options算法2(理解篇)

    论文地址: https://people.cs.umass.edu/~barto/courses/cs687/Sutton-Precup-Singh-AIJ99.pdf 例子: 这是一个寻路问题,该问 ...

  4. 是时候放弃Scratch了,你有更好的扣叮coding

    原创 IT软件部落 IT软件部落 Scratch是由麻省理工学院媒体实验室开发的,拥有一个庞大的全球社区,用户可以在社区中分享和交流自己的作品,适用于全球各个领域,包括学校.社区和个人等. 可是你有没 ...

  5. 关于ClassLoader中getResource与getResourceAsStream的疑问

    背景: 某日临近下班,一个同事欲任何类中获取项目绝对路径,不通过Request方式获取,可是始终获取不到预想的路径.于是晚上回家google了一下,误以为是System.getProperty(&qu ...

  6. AbstractQueuedSynchronizer源码解析之ReentrantLock(二)

    上篇文章分析了ReentrantLock的lock,tryLock,unlock方法,继续分析剩下的方法,首先开始lockInterruptibly,先看其API说明:lockInterruptibl ...

  7. 【多线程】Java并发中的锁(草稿)

    可重入锁Synchronized 1 public class DemoTest { 2 public static void main(String[] args) { 3 final DemoTe ...

  8. Visual Studio 使用IISprofile进行远程部署

      ​

  9. RAG分块策略:主流方法(递归、jina-seg)+前沿推荐(Meta-chunking、Late chunking、SLM-SFT)

    RAG分块策略:主流方法(递归.jina-seg)+前沿推荐(Meta-chunking.Late chunking.SLM-SFT) 大多数常用的数据分块方法(chunking)都是基于规则的,采用 ...

  10. uniapp使用EventBus实现页面间数据传递

    前情 最近在做小程序项目,选用是当前比较火的uniapp技术栈,经常会遇到页面间消息传递的需求. 为什么要这么做? uniapp页面间数据通信方式有很多:通过url传参,状态管理库vuex/pinia ...