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

题解:CF2187D Cool Problem

题目传送门:洛谷 & codeforces

题目简述

给定一个存在零一和问号的串 \(s\),设 \(S=\{t\mid i\in\left[1, n\right]\cap\mathbb{Z},t_i\in\left\{\begin{matrix}\left\{0, 1\right\}\ \ \ \ s_i=? \\\left\{s_i\right\}\ \ \ \ else\end{matrix}\right.\}\)
\(f(s)=\vec a\) 其中 \(a_i = \left\{\begin{matrix}0\ \ \ \ \ i=0\\x+a_{i-1}\ \ \ \ s_i=0\wedge i>0\\y-a_{i-1}\ \ \ \ s_i=1\wedge i>0\end{matrix}\right.\),求 \(\sum_{t\in S}\sum_{i=1}^nf(t)_i\)

思路

\(\sum_{i=1}^nf(t)_i\) 十分复杂,考虑先把这一部分化简掉。

由于\(a_i = \left\{\begin{matrix}0\ \ \ \ \ i=0\\x+a_{i-1}\ \ \ \ s_i=0\wedge i>0\\y-a_{i-1}\ \ \ \ s_i=1\wedge i>0\end{matrix}\right.\)
其中对于不同的 \(i\)\(a_i\) 的递推和 \(s_i\) 相关,考虑找到一个不管 \(s_i\) 取多少都成立的 \(a_i\)\(a_{i-1}\) 的关系式。

那么什么关系式会可能出现两种取值呢?容易想到小学二年级就学过的二次方程,那么 \(a_i\) 的两种不同取值就是方程的两个根。用双根式容易构造得

\[[a_i-(x+a_{i-1})][a_i-(y-a_{i-1})]=0 \]

展开a

\[a_i^2-(x+y)a_i+xy+(y-x)a_{i-1}-a_{i-1}^2=0 \]

因为要算 \(\sum_{i=1}^na_i\) 所以求和

\[\sum_{i=1}^na_i^2-(x+y)a_i+xy+(y-x)a_{i-1}-a_{i-1}^2=0 \]

分开

\[\sum_{i=1}^na_i^2-(x+y)\sum_{i=1}^na_i+nxy+(y-x)\sum_{i=1}^na_{i-1}-\sum_{i=1}^na_{i-1}^2=0 \]

变限(\(a_0 = 0\) 直接省略)

\[\sum_{i=1}^na_i^2-(x+y)\sum_{i=1}^na_i+nxy+(y-x)\sum_{i=1}^{n-1}a_i-\sum_{i=1}^{n-1}a_i^2=0 \]

组合一下

\[\left(\sum_{i=1}^na_i^2-\sum_{i=1}^{n-1}a_i^2\right)+\left[(y-x)\sum_{i=1}^{n-1}a_i-(x+y)\sum_{i=1}^na_i\right]+nxy=0 \]

化简(\(S_n = \sum_{i=1}^na_i\)

\[a_n+(yS_{n-1}-xS_{n-1}-xS_{n-1}-yS_{n-1})+nxy=0 \]

其中

\[\begin{align*}yS_{n-1}-xS_{n-1}-xS_n-yS_n&=-x(S_{n-1}+S_n)+y(S_{n-1}-S_n)\\&=-x(2S_n-a_n)-ya_n\\&=-2xS_n+(x-y)a_n\\\end{align*} \]

带回

\[a_n-2xS_n+(x-y)a_n+nxy=0 \]

移项

\[a_n+(x-y)a_n+nxy=2xS_n \]

得到(\(S_n = \sum_{i=1}^na_i=\sum_{i=1}^nf(t)_i\)

\[\sum_{i=1}^nf(t)_i=\frac{a_n+(x-y)a_n+nxy}{2x} \]

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

相关文章:

  • FPGA加速LLM推理:LUT-LLM技术解析与实践
  • 并行代理执行框架:提升深度搜索效率的核心技术
  • 通过 curl 命令直接测试 Taotoken 聊天补全接口的步骤详解
  • 为团队统一开发环境使用Taotoken CLI一键配置密钥
  • 首帧定制化视频生成技术解析与应用实践
  • 高预应力混杂配筋:三大核心系统轻松上手
  • Axure RP终极汉化指南:3分钟让你的设计软件说中文 [特殊字符]
  • 数据科学学习路径:从Excel到机器学习的系统指南
  • 2026年,地道传统霞浦美食大揭秘,独特美味究竟哪个更胜一筹? - 速递信息
  • 基于RAG的Obsidian AI写作助手:本地部署与检索增强生成实践
  • ToastFish:利用碎片时间背单词的智能学习工具
  • DownKyi专业级解决方案:B站视频下载的全流程技术解析与优化实践
  • 3分钟掌握20+输入法词库转换:深蓝词库转换工具终极指南
  • 代码大模型安全风险与预训练优化实践
  • 3步打造专属Office工作台:告别繁琐菜单,效率提升70%的秘诀
  • A2UI-ADK:现代跨平台桌面应用开发套件实战指南
  • 刚刚,DeepSeek大更新!多模态终于来了
  • 大语言模型训练实战:并行策略、吞吐优化与稳定性调优
  • 3步快速获取百度网盘提取码:智能工具让资源解锁从未如此简单
  • TikTok评论采集器:3步获取完整评论数据,无需编程技能
  • 别再死记硬背了!用一张图+实战代码搞懂UVM Phase的执行顺序与依赖关系
  • 大语言模型与人类脑机制在句法处理中的对比研究
  • 告别版本混乱!手把手教你用TortoiseSVN管理团队代码(附图标含义详解)
  • Office Custom UI Editor:终极指南,3步打造你的专属Office工作台
  • Focus-dLLM:动态稀疏注意力机制优化长上下文LLM推理
  • 体验Taotoken多模型聚合端点的稳定与低延迟响应
  • MCP Gateway:基于Kubernetes的AI应用统一接入与工具管理平台
  • 如何高效使用Pulover‘s Macro Creator实现Windows自动化:终极技术指南
  • 腐蚀-Rust-服务器开服联机教程
  • 社交智能LLM代理的心智理论与应用实践