\(\mathscr{Summary}\)

  还行,B 题挺不错,C 题就省选来说有点水(?

\(\mathscr{Solution}\)

\(\mathscr{A-}\) 分裂

  初始时,你有一个 \(1\) 级球,每次可以把一个 \(k\) 级球变成 \(k+1\) 个 \(k+1\) 级球,请构造恰好得到 \(n\) 个球的方案,仅需输出最终球的等级和对应数量。

  多测,\(T\le10^4\),\(n\le10^{18}\),你需要保证所有方案中球的等级种类之和不超过 \(10^7\)。


  一开始去优化“球的数量之和”,大大地伪了一发。

  注意部分分有个 \(n\) 是阶乘,而阶乘的时候等级种类自然是最少的,所以我们先找到最大的 \(x!\le n\),先把 \(1\) 级球不停操作得到 \(x!\) 个 \(x\) 级球,此时再取一定数量的 \(x\) 级球操作到 \(x+1\) 级球,设 \(n'\) 为还需要的球的数量,那么 \(n'\le x\)。通过升级一个 \(k\) 级球,还原 \(k\) 个 \(k\) 级球,可以使 \(n'\) 减少 \(1\),模拟几次就行。

  阶乘的是指数级,那么复杂度为 \(\mathcal O(T\log n)\),每次使用不超过 \(4\) 种等级。

\(\mathscr{B}-\) 未来

  给定长度为 \(n\),字符集为 \(\{\text r,\text g,\text b\}\) 的字符串 \(S\),对其进行 \(m\) 次变换,每次变换使 \(S\) 变为 \(S'\),若 \(S_i=S_{(i+1)\bmod n}\),\(S'_i=S_i\),否则 \(S'_i=\{\text r,\text g,\text b\}\setminus\{S_i,S_{(i+1)\bmod n}\}\)。求变换后的最终序列。

  \(n\le5\times10^5\)。


  套路性地去想一个具有交换律、结合律的整数运算来等价表示两个字符的运算结果。进而,令三种字符为 \(0,1,2\),可以构造出这样的运算:\(a\oplus b=(-(a+b))\bmod 3\),并且这个负号仅由 \(m\) 决定,问题被转化成:给定序列 \(\{a_n\}\),每次操作令 \(a'_i=a_i+a_{(i+1)\bmod n}\),求 \(m\) 次操作后每个 \(a_i\bmod 3\)。

  若 \(a_i\) 的值在下标移动 \(d\) 次后更新到了 \(a_j\),那么贡献系数显然是 \(\binom{m}d\),注意仅对 \(3\) 取模,所以对它 Lucas 一发,设 \(m=\sum 3^{m_k}\) 为 \(m\) 的三进制分解(如果某个幂次数是 \(2\),加两次),就组合意义上,我们可以依次对 \(\{a_n\}\) 施加 \(3^{m_1}\) 次操作,再施加 \(3^{m_2}\) 次操作,……最后总共施加 \(m\) 次操作。每次操作中,贡献系数都是 \(\binom{3^{m_i}}{d}\),因而 \(d=0\) 或 \(d=3^{m_i}\) 时,才能使系数非 \(0\),这个可以 \(\mathcal O(n)\) 模拟一遍算出来,所以总复杂度 \(\mathcal O(n\log m)\)。

\(\mathscr{C}-\) 回忆

  给定一个 \(n\times m\) 的网格,\((i,j)\) 以 \(a_{i,j}\) 的概率可用,求可用单元格构成的四联通块中,最大块大小的期望。

  \(nm\le40\)。


  你能想到最暴力的插头 DP:按列转移,状态数组直接 map<pair<vector<int>, vector<int> >, int>,过了。打了下表,有效状态数不超过 \(10^5\)。

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

  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. Python面向对象小备忘

    最近学到面向对象了,感觉到Python这方面的语法也有点神奇,这里专门归纳一下Python面向对象中我觉得比较重要的笔记. 本文目前有的内容:实例属性和类属性的访问,使用@property修饰器 实例 ...

  2. 「模拟赛」多校 A 层联训 15

    比赛链接 A. 追逐游戏 (chase) 没啥意义的水题,但赛时没调出来. 分讨,LCA 设 \(S\) 和 \(T\) 的 LCA 为 \(lca\) \(S'\) 为 \(lca\) 的祖先节点的 ...

  3. winform计算器

    引言 本次项目目的主要为了熟悉winform控件使用,以及学习Microsoft.CSharp的使用. 技术栈 C# winform 实现效果 设计与实现 按键使用button空间,计算算式以及计算结 ...

  4. zkw 线段树-原理及其扩展

    前言 许多算法的本质是统计.线段树用于统计,是沟通原数组与前缀和的桥梁. <统计的力量>清华大学-张昆玮 关于线段树 前置知识:线段树 OIWiki. 线段树是一种专门维护区间问题的数据结 ...

  5. 关于免费笔记软件Obsidian和免费同步,长文,保存观看

    前言 这段可以略过 最早使用的笔记软件(应该说是网页摘录软件)是网文快捕 CyberArticle ,但不停换电脑后当年保存的资料基本都遗失了,那可是我翻阅众多涩涩网站的精华文章. 后来网文快捕推出了 ...

  6. Python 在PDF中绘制线条、矩形、椭圆形

    在PDF中绘制图形可以增强文档的视觉效果.通过添加不同类型的形状,如实线.虚线.矩形.圆形等,可以使文档更加生动有趣,提高读者的阅读兴趣.这对于制作报告.演示文稿或是教材特别有用.本文将通过以下几个示 ...

  7. Python脚本消费多个Kafka topic

    在Python中消费多个Kafka topic,可以使用kafka-python库,这是一个流行的Kafka客户端库.以下是一个详细的代码示例,展示如何创建一个Kafka消费者,并同时消费多个Kafk ...

  8. VulnStack之ATT&CK实战系列———红队实战(一)

    目录 前言 环境搭建 外围打点 信息收集 phpmyadmin全局日志getshell 内网信息收集 msf上线 mimikatz抓取明文密码&hash 域信息收集 横向移动 msf+prox ...

  9. Linux终端命令之screen

    screen的功能 screen的功能大体有三个: 会话恢复:只要Screen本身没有终止,在其内部运行的会话都可以恢复.这一点对于远程登录的用户特别有用--即使网络连接中断,用户也不会失去对已经打开 ...

  10. python图形界面开发工具之PySimpleGUI

    缘起: 工作中使用频次较高的操作都需要登录到某个管理平台上进行选择操作,如果是给别人使用还算可以, 但是作为平常使用还是感觉较为繁琐,于是打算开发一个桌面小工具解决这个痛点,达到使用时及时调起使用,方 ...