给你一个数 n ,让你从 n 中取出若干数合并成 x ,剩下数合并成 y ,求对于所有取法 x+y 的和 例如 12345 可以拿出 24 ,剩下 135 ,此时会对答案产生 24+135 的贡献。而 42,153 或 23,15 是不合法的 n≤10105
给你一个数 n ,让你从 n 中取出若干数合并成 x ,剩下数合并成 y ,求对于所有取法 x+y 的和
例如 12345 可以拿出 24 ,剩下 135 ,此时会对答案产生 24+135 的贡献。而 42,153 或 23,15 是不合法的
n≤10105
显然 ∑x+y=∑x+∑y ,因此我们单独考虑 n 中选若干个数合并成的所有 x 的和,记作 cnt ,答案即为 2cnt
这里其实不算是动态规划。设 fi 表示第 i 个位置强制取,剩下的随意的方案数。容易发现:
其中 2n−i−1 表示 i 这位之后随便取得方案数, ∑j=0i−1(i−1j)10j 表示前 i−1 个数中取 j 个时的方案数 + 产生的贡献
cnt=∑i=1nfi
复杂度 O(nlogn) ,瓶颈快速幂
哦懂了懂了,等比数列求和。
(3) 到 (4) 是怎么转移的,大佬orz
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?