\(\mathscr{Summary}\)

  啊……说老实话,早上昏昏欲睡的,起码浪费了一个多小时。比赛打麻了 qwq。

  A 题类似费用提前计算,回忆起这个 trick 之后就简单了。B 题又错付了,平衡树常数令人 ,没注意到区间平移可以在数据结构之外进行。C 题打表,佛了。

\(\mathscr{Solution}\)

\(\mathscr{A}-\) RK

  有 \(n\) 盏灯排成一排,在某时刻开始时操作灯 \(i\),会立即改变灯 \(i\) 的状态,在下一时刻末改变灯 \(i+1\) 的状态,下下一时刻末改变灯 \(i+1\) 的状态……直到改变了灯 \(n\) 的状态或者某一时刻所有灯关闭。给定初始状态,求至少需要到第几时刻,能让所有灯关闭。

  多测,\(T\le2^{16}\),\(n\le16\)。


  钦定时刻 \(r\) 时关完灯,\(f_r(i,S)\) 表示时刻 \(i\) 时能否达到状态 \(S\),每次操作灯时对灯序列的最终影响是确定的,所以 \(\mathcal O(n^32^n)\) 打表就好。

\(\mathscr{B}-\) WK

  给定序列 \(\{a_n\}\),对于每个其子段 \(\{b_m\}\),每次操作选定 \(i\in[1,m)\),令 \(b_i\leftarrow b_i\pm1\),\(b_{i+1}\leftarrow b_{i+1}\mp1\),目标是使所有 \(K\mid b_i\)。求所有子段最小操作次数(无解算作 \(-1\) 次)之和。

  \(n\le10^6\)。


  对于 \(\{b_m\}\),显然有解当且仅当 \(K\mid \sum b_i\),此时最优操作次数为 \(\sum_{i=1}^{m-1}f\left(\sum_{j=1}^i b_i\bmod K\right)\),其中 \(f(x)=\min\{x,K-x\}\)。

  计数?暴力一点,枚举右端点 \(r\),维护每个左端点 \(l\) 的内部 \(f\) 贡献以及到这个 \(r\) 时模 \(K\) 的余数。记贡献为 \(v\),余数为 \(r\),那么转移涉及的修改是对 \(\begin{bmatrix}v&r&1\end{bmatrix}^T\) 的线性变换,直接平衡树维护矩阵,复杂度 \(\mathcal O(n\log n)\) 理论正确。可以用线段树,也可以压缩矩阵数据量,总之我懒得写啦。

\(\mathscr{C}-\) SK

  一个 boss,\(n\) 滴血,每回合你随机获得以下三种手牌:

之一,求期望需要多少回合消灭 boss。答案模 \(998244353\)。


  显然是屯牌到最后一回合直接秒 boss,那么期望步数 = 期望恰好秒不掉 boss 的步数 +1 = 所有秒不掉 boss 的手牌被抽出来的概率和 +1。讨论牌型:

\[1:\sum_{i=1}^n3^{-i}=\frac{1-3^{-n}}{2}.
\]
\[2:\sum_{i=1}^{(n-1)/2}3^{-i}=\frac{1-3^{-(n-1)/2}}{2}.
\]
\[3:\sum_{i\ge 1}3^{-i}=\frac{1}{2}.
\]
\[2+3:\sum_{i=1}^{n/2}\frac{2^i-2}{3^i}=2-2(2/3)^{n/2}-1+3^{-n/2}.
\]

这几种比较好算,剩下的容斥,即“假设这些类型都出现过”,再继续打,依此计算手牌伤害,那么

\[1+2:A(x)=\frac{1}{3}(x+x^3)A(x)\\
\Rightarrow (1-\frac{1}{3}x-\frac{1}{3}x^3)A(x)=0.
\]
\[1+3:B(x)=\frac{1}{3}(x+x^2)B(x)\\
\Rightarrow(1-\frac{1}{3}x-\frac{1}{3}x^2)B(x)=0.
\]
\[1+2+3:C(x)=\frac{1}{3}(x+x^3+x^4)C(x)\\
\Rightarrow(1-\frac{1}{3}x-\frac{1}{3}x^3-\frac{1}{3}x^4)C(x)=0.
\]

都能矩阵加速求点值,注意容斥的时候还是要把伤害算成假设条件下的伤害。例如 \(1+2+3\) 下对 \(2+3\) 的容斥应为 \(D(x)=\frac{1}{3}(x^3+x^4)D(x)\)。合并同类项之后只需要四次矩阵快速幂。

  复杂度 \(\mathcal O(T\log n)\),常数为矩阵乘法的 \(5^3\)。

Solution Set -「LOCAL」冲刺省选 Round XXIX的更多相关文章

  1. Solution Set -「LOCAL」冲刺省选 Round XXV

    \(\mathscr{Summary}\)   读错题了读错题了 B 题差点没做出来真的太吓人了.   逆序开题,C 题直接冲一发暴力最大权闭合子图居然过了.A 题确实一下子没想到用"可能的 ...

  2. Solution Set -「LOCAL」冲刺省选 Round XXIV

    \(\mathscr{Summary}\)   名副其实的 trash round,希望以后没有了.   A 题算好,确实一个比较关键的简化状态的点没想到,所以只拿了暴力(不考虑 \(\mathcal ...

  3. Solution Set -「LOCAL」冲刺省选 Round XXIII

    \(\mathscr{Summary}\)   有一说一,虽然我炸了,但这场锻炼心态的效果真的好.部分分聊胜于无,区分度一题制胜,可谓针对性强的好题.   A 题,相对性签到题.这个建图确实巧妙,多见 ...

  4. Solution Set -「LOCAL」冲刺省选 Round XXII

    \(\mathscr{Summary}\)   和出题人很有缘分但是没有珍惜.jpg   A 题有一个显然的二维偏序斜率式,以及显然的 CDQ 套李超树 \(\mathcal O(n\log^2n)\ ...

  5. Solution Set -「LOCAL」冲刺省选 Round XXI

    \(\mathscr{Summary}\)   省选几个小时啊,怎么模拟赛只打三个小时啊./kk   时间安排较为合理,没有出现严重的因思考时间过少引起的丢分.   A 题比较可惜,二分 + 点分治大 ...

  6. Solution -「LOCAL」过河

    \(\mathcal{Description}\)   一段坐标轴 \([0,L]\),从 \(0\) 出发,每次可以 \(+a\) 或 \(-b\),但不能越出 \([0,L]\).求可达的整点数. ...

  7. Solution -「LOCAL」画画图

    \(\mathcal{Description}\)   OurTeam.   给定一棵 \(n\) 个点的树形随机的带边权树,求所有含奇数条边的路径中位数之和.树形生成方式为随机取不连通两点连边直到全 ...

  8. Solution -「LOCAL」充电

    \(\mathcal{Description}\)   给定 \(n,m,p\),求序列 \(\{a_n\}\) 的数量,满足 \((\forall i\in[1,n])(a_i\in[1,m])\l ...

  9. Solution -「LOCAL」二进制的世界

    \(\mathcal{Description}\)   OurOJ.   给定序列 \(\{a_n\}\) 和一个二元运算 \(\operatorname{op}\in\{\operatorname{ ...

  10. Solution -「LOCAL」大括号树

    \(\mathcal{Description}\)   OurTeam & OurOJ.   给定一棵 \(n\) 个顶点的树,每个顶点标有字符 ( 或 ).将从 \(u\) 到 \(v\) ...

随机推荐

  1. DashText-快速开始

    快速开始 DashText,是向量检索服务DashVector推荐使用的稀疏向量编码器(Sparse Vector Encoder),DashText可通过BM25算法将原始文本转换为稀疏向量(Spa ...

  2. SparkSQL练习:对学生选课成绩进行分析计算

    题目内容: 对学生选课成绩进行分析计算 题目要求: (1)该系总共有多少学生: (2)该系共开设来多少门课程: (3)每个学生的总成绩多少: (4)每门课程选修的同学人数: (5)每位同学选修的课程门 ...

  3. 10-3 定制操作lambda

    目录 10.3.1 向算法传递函数 谓词 排序算法 10.3.2 lambda表达式 引入 介绍lambda 向lambda传递参数 使用捕获列表 调用find_if 使用for_each 完整的bi ...

  4. [异常笔记] zookeeper集群启动异常:Error contacting service. It is probably not running.

    報錯信息 zookeeper服務已經啓動,但是狀態是Error contacting service. It is probably not running. 2021-02-23 21:00:41, ...

  5. Eclipse 调试窗口无法显示,以及断点设置无效问题的解决方法

    问题描述一:在下载了2020.3的Eclipse之后,调试程序,无法弹出调试窗口及变量信息. 解决方案:菜单栏:windows--show view--Other--找到Debug文件夹,可以挑选自己 ...

  6. 一款WPF开发的B站视频下载开源项目

    更多开源项目请查看:一个专注推荐优秀.Net开源项目的榜单 今天给推荐一款C#开发的.界面简洁的哔哩哔哩视频下载工具. 项目简介 这是一款基于WPF开发的,B站下载工具,操作界面简洁,支持多线程下载. ...

  7. 9.Kubernetes核心技术-Controller

    Kubernetes核心技术-Controller 内容 什么是Controller Pod和Controller的关系 Deployment控制器应用场景 yaml文件字段说明 Deployment ...

  8. 6.Kubernetes集群管理工具kubectl

    Kubernetes集群管理工具kubectl 概述 kubectl是Kubernetes集群的命令行工具,通过kubectl能够对集群本身进行管理,并能够在集群上进行容器化应用的安装和部署 命令格式 ...

  9. viper读取配置文件

    //方法一 func readConfig1(path, filename, filetype string) interface{} { viper.AddConfigPath(path) vipe ...

  10. golang操作ini文件包之go-ini

    官网:ini.unknwon.io/docs github:https://github.com/go-ini/ini ini 是 Windows 上常用的配置文件格式.MySQL 的 Windows ...