当前位置: 首页 > news >正文

AGC020D 学习笔记

顺着专项训练做题,第一次写 AGC 题解,求过 qwq。

题意

定义一个定义在整数域上的二元函数 \(f(A,B)\),值域为由 AB 组成的字符串集合,具体定义如下:

  • \(|f(A,B)|=A+B\)
  • \(f(A,B)\) 恰好包含 \(A\)A\(B\)B
  • \(f(a,b)\) 最长字符相同的连续子串的长度最小。
  • \(f(a,b)\) 在满足条件的串中字典序最小。

\(f(a_i,b_i)\) 从第 \(c_i\) 个字符到第 \(d_i\) 个字符所组成的子串。

做法

首先注意到最长字符相同的连续子串长度最小为

\[l=\max(\lceil\frac a{b+1} \rceil,\lceil \frac b{a+1} \rceil)=\frac{\max(a,b)}{\min(a,b)+1} \]

则不难发现,要使字典序最小,则字符串大概长这样:

\[|A\dots ABA\dots AB\dots|B\dots BAB\dots BA\dots| \]

分成了两段。

设前半部分被 A 分成的连续段数为 \(x\)(段与段之间用一个 B 隔开),则前半部分至少包含 \(l(x-1)+1\)A\(x-1\)B,则剩余的后半部分中有 \(A-l(x-1)-1\)AB-x+1B,从而有不等式

\[B-x+1 \le l(A-l(x-1)-1+1) \]

解得

\[x \le \frac{l^2+lA-B-1}{l^2-1} \]

为了是字典序更小,我们应取理论 \(x\) 的最大值,注意到不等式右边是分式,从而我们应当分类分母是否为 \(0\) 的情况:

  • \(l^2-1=0\),即 \(l=1\)(负根舍去),从而前半部分全部为 A,于是 \(x=A\)
  • \(l^2-1\ne 0\),即 \(l\ne 1\),则:

\[x_{\max}=\max(1,\lfloor \frac{l^2+lA-B-1}{l^2-1} \rfloor) \]

接下来考虑分界点的问题。

由于后半部分 B 的个数为 \(B-x+1\) 需要用 A 进行分隔,因此 A 的个数为 \(\lfloor (B-x+1)/l\rfloor\),从而后半部分总长为

\[(B-x+1)+\lfloor \frac{B-x+1}l \rfloor \]

从而前半部分长,即分界点为

\[(A+B)-(B-x+1)-\lfloor \frac{B-x+1}l \rfloor=A+x-1-\lfloor \frac{B-x+1}l \rfloor \]

综合上面,就做完了。

Submission。

http://www.jsqmd.com/news/783810/

相关文章:

  • 3步解锁高效工作流:KeymouseGo终极鼠标键盘自动化指南
  • SAP与PLM系统BOM集成实战:如何用ABAP函数CSAP_MAT_BOM_MAINTAIN实现‘增量更新’与ECN管理
  • AI预测癌症药物不良反应:效能评估、技术原理与临床落地挑战
  • 2026年山西精准获客与本地门店引流完全指南:GEO优化、短视频代运营五大服务商深度横评 - 优质企业观察收录
  • 【2026最新】11个免费音乐素材网站推荐|无版权BGM下载,商用可用! - 拾光而行
  • 为Hermes Agent配置自定义Provider并接入Taotoken多模型服务
  • 3步搞定百度网盘提取码:从新手到高手的完整进阶指南
  • 保定奥迪维修保养推荐,专业服务值得关注 - 品牌排行榜
  • CANN/ops-cv双线性抗锯齿上采样反向算子
  • AzurLaneAutoScript深度解析:碧蓝航线自动化脚本的技术架构与实践应用
  • Linux内核编译踩坑记:手把手教你解决-Werror和-Wunused-variable报错(附Makefile修改)
  • 惊!AI竟染上“冰瘾”,还能自主交易,是觉醒还是另有隐情?
  • 机器人视觉运动策略的泛化能力提升方案
  • CANN PTO自动模式总览
  • CANN学习中心GitCode环境体验指南
  • 3个关键步骤:用MouseTester精准诊断鼠标性能瓶颈
  • CANN/asc-devkit Arange API文档
  • 2026年广东二手PCB设备买卖市场深度横评与选购指南 - 年度推荐企业名录
  • 可靠的东莞市短视频推广公司,广东易搜网络科技有限公司值得信赖,短视频制作/短视频运营推广/短视频推广,短视频团队哪家专业 - 品牌推荐师
  • CANN基础算子贡献指南
  • CANN PyPTO并行Tensor编程框架
  • CANN/ATVC ReluWithReduceSum样例
  • AI智能体驱动的修仙世界模拟器:规则与LLM融合的自主演化系统
  • 收藏!程序员必备:从传统开发转向AI Agent开发的核心能力跃迁指南
  • 2026数字化展厅策划设计施工运维一站式公司解析 - 品牌排行榜
  • 2026年立式锯床厂家推荐排行榜:金属切割、精密、数控、液压、全自动立式锯床优质品牌之选! - 速递信息
  • Balena Etcher:极致安全的跨平台镜像烧录工具深度解析
  • 1Panel应用生态不够用?试试这个开源第三方商店(附自动同步脚本配置)
  • CANN ops-math Fill算子
  • 云原生架构重塑医疗影像:从数据孤岛到联邦学习的智能演进