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

洛谷 P14461 【MX-S10-T2】『FeOI-4』青年晚报

P14461 【MX-S10-T2】『FeOI-4』青年晚报

空降

很好得诠释了数学和眼神的重要性

感谢奆佬


设求导算子为 $ d $ ( 熟悉线代科技的奆佬可以从求导矩阵和单位矩阵结合成分块矩阵形式的角度进行理解),显然对于 $ F $ 的一阶导数可以表示为 $ dF $ ,于是递推关系式可以表示为:

$ F_{i}=(1+d)G_{i-1} $

$ \ $

$ G_{i}=(1-d)F_{i-1} $

再将 $ G_{i-1} $ 和 \(F_{i-1}\) 代换掉,并使用尊贵的平方差公式:

$ F_{i}=(1+d)(1-d)F_{i-2}=(1-d^{2})F_{i-2} $

$ \ $

$ G_{i}=(1-d)(1+d)G_{i-2}=(1-d^{2})G_{i-2} $

此时我们发现,原本两个互推的关系式变成了一个简洁美观的递推式(接下来以 $ F $ 为例子,$ G $ 同理)。

从矩阵的角度理解
  1. 多项式的向量表示:

$ F = [f₀, f₁, f₂, ..., fₘ] $
$ G = [g₀, g₁, g₂, ..., gₘ] $

  1. 求导矩阵 $ D $ :

D =

[0  1  0  0  ...  0][0  0  2  0  ...  0][0  0  0  3  ...  0][... ... ... ... ...][0  0  0  0  ...  m][0  0  0  0  ...  0] 

即 $ D $ 是一个 $ (m+1)×(m+1) $ 的矩阵,其中 $ D[i][j] = (j+1) 当 i = j+1 $ ,否则为 $ 0 $ 。

于是有 $ F' = D·F $ 。

  1. 递推关系:

M是一个 $ 2×2 $ 的分块矩阵, $ I
$ 是 $ (m+1)×(m+1) $ 的单位矩阵。

M =

[0,   I+D][I-D, 0  ]

状态向量:

Vᵢ =

[Fᵢ][Gᵢ]

递推关系:

Vᵢ = M · Vᵢ₋₁

于是有:

M² =

[0,   I+D] · [0,   I+D][I-D, 0  ]   [I-D, 0  ]   

=

[(I+D)(I-D),   0      ][0,           (I-D)(I+D)]

最终:

M² =

[I-D², 0    ][0,    I-D² ]

得到:

F₂ = (I - D²)·F₀

G₂ = (I - D²)·G₀


很显然通过递推式自己套自己可以表示为:

$ F_{i}=(1-d{2})F_{i-2k} $

在 $ n $ 为偶数时(奇数就往下推到$ F_{1},G_{1} $ 以后开始 ),令 $ k=\frac{n}{2},i=n $ 时有:

$ F_{n}=(1-d{2})F_{0} $

传奇二项式展开,就可以得到一坨美丽的式子:

$ F_{n}= \displaystyle \sum{k}_{i=0}C_{k}(-1){i}dF_{0} $

这时候就有同学要问了:主播主播,这样时间复杂度不是 $ O(n \cdot m) $ 吗?不得 $ T $ 飞到太阳去?

我们注意到当 $ i > \lfloor \frac{m}{2} \rfloor $ 时,由于导数的次数太猛了,直接给 $ d^{2i}F_{0} $
干成 $ 0 $ ,所以实际算法的时间复杂度为 $ O(m^{2}) $ 。


完结收工!!!!!

个人主页

看完点赞,养成习惯

\(\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\Downarrow\)

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

相关文章:

  • Microsoft Agent Framework 接入DeepSeek的优雅姿势
  • 详细介绍:C语言——深入解析C语言指针:从基础到实践从入门到精通(二)
  • 深入解析:k8s学习(二)——kubernetes整体架构及组件解析
  • 2025.11.9博客
  • 硬件基础知识和典型应用-4G模组供电设计推荐
  • 计算机课程在线视频 —— 王道计算机考研 计算机网络
  • 案例研究
  • 深入解析:归档及压缩、重定向与管道操作和综合使用,find精确查找、find处理查找结果、vim高级使用、vimdiff多文件使用
  • 高雅 - Gon
  • AI 测试 智能体30节课
  • BUUCTF-wustctf2020_getshell_2
  • P14359 [CSP-J 2025] 异或和 / xor(官方数据)
  • 从CPython底层解析:为何a=10 b=10复用对象,a=[] b=[]新建对象?
  • 对长度为 n 的数组 arr,调用 `merge_sort(a, 0, n-1)`,在排序过程中,`merge` 函数的递归调用次数大约是多少?
  • 解析SP3D VUE和PDMS RVM文件-PlantAssistant
  • 20251109-3
  • VS Code 1.105正式发布: AI 新特性详解:7 大亮点全面提升智能开发体验 - 详解
  • kettle从入门到精通 第110课 ETL之kettle webspoon的两种部署方式docker+tomcat使用教程
  • 【达梦数据库】性能优化-转正官网
  • Python中`a = 10`的6种读法对比:哪种最贴合名字-对象模型?
  • netgear r6220 路由器,刷openwrt后,体系备份还原
  • 文字识别准确度
  • 原生多模态AI架构:统一训练与跨模态推理的环境实现与性能优化
  • VBA之Word应用第四章第三节:段落集合Paragraphs对象的手段(一)
  • 日记?
  • 2025校运会小记
  • 安卓项目调用摄像头或相机。调用不了相机解决方案
  • 用《西游记》讲透Python name模型:撕最后一张符咒,山为何会消失?
  • 鸿蒙应用开发实战:实现分享卡片保存为图片功能
  • nvidia边缘计算平台 —— Jetson AGX Thor —— 英伟达NVIDIA Jetson AGX Thor 128G开发者套件 AI智能 T5000模组