whk一则

news/2025/4/3 3:09:30/文章来源:https://www.cnblogs.com/Claimo0611/p/18805176

考虑4.1校本最后一题第三问:设 \(D_{n}^i\) 表示 \((x^2+x+1)^n\)\(x^i\) 项系数,求 \(\binom{2025}{0}D_{2025}^0-\binom{2025}{1}D_{2025}^1+...\binom{2025}{2025}D_{2025}^{2025}\)。存在一种多项式技术的做法,而且标答也是这种做法。我当场就被吓死了。

本文旨在用尽可能通俗的语言介绍多项式技术于高中排列组合问题的简单应用,且此类题目已经存在,足以说明其应用价值,而非简单的装逼。

多项式概念与引入

设这样几个多项式

\[f(x)=\sum_{i=0}^{infty}a_ix^i \]

\[g(x)=\sum_{i=0}^{infty}b_ix^i \]

\[h(x)=f(x)g(x)=\sum_{i=0}^{infty}c_ix^i \]

它们三个都是无穷次多项式,这样做是为了省去边界的影响。

\(h=f*g\),即 \(h(x)\)\(f(x),g(x)\)卷积。其实就是把两个多项式乘起来,叫这么一个装逼的名字是因为这个成绩的每一项都具有一定性质。

研究 \(h(x)\)\(k\) 次项系数,发现这一系数是由所有满足次数和为 \(k\)\(a_ix^i\)\(b_jx^j\) 的乘积的和组成的。也就是

\[c_k=\sum_{i+j=k}a_ib_j \]

\(h(x)\) 的五次项举例,它就是由

\[a_0*(b_5x^5)+(a_1x)*(b_4x^4)+(a_2x^2)*(b_3x^3)+(a_3x^3)*(b_2x^2)+(a_4x^4)(b_1x)+(a_5x^5)(b_0) \]

组成的,就是

\[c_5=a_0*(b_5x^5)+(a_1x)*(b_4x^4)+(a_2x^2)*(b_3x^3)+(a_3x^3)*(b_2x^2)+(a_4x^4)(b_1x)+(a_5x^5)(b_0) \]

还是很好理解的。

依靠这种卷积后的没一项都满足的这种次数一增一减的神秘小性质使得我们可以用多项式卷积来解决一些神秘的小问题。

比如说现在有 \(n\) 个人,第 \(i\) 个人有 \(a_{i,j}\)\(j\) 块钱,现在要求每个人拿出一张任意面额的钱,求凑出一张面值为 \(m\) 的钱的方案数。

就可以设第 \(i\) 个人是一个长成这样的多项式:

\[f_i(x)=\sum_{j=0}^{infty}a_{i,j}x^j \]

然后计算出 \(\prod_{i=1}^nf_i(x)\) 这个大多项式(就是把所有f卷积/乘法起来)。那么这个大多项式的 \(m\) 次项即为所求,想一想为这么。

这个办法有一个很装逼的名字叫生成函数,不提。

那么这个玩意看似很牛逼,实际算起来就很蛋疼了,因为我们虽然能用多项式表示组合意义,但是计算的过程本质是不减的。

回到上文,不难发现难算的本质原因是因为卷积的过程过于麻烦,如果我们可以快速得到多项式卷积后的某些想要的系数,多项式方法就能非常无脑强大。

那么如何快速求这样的卷积?在计算机科学中可以使用fft,ntt等。高中数学的话,二项式定理不就能?仔细想想,二项式定理使得我们可以很快求出若干二次多项式卷积后某一次数的结果(\((x+1)^n\) 就是把 \((x+1)\) 这个多项式连续卷积了 \(n\) 次,系数是组合数),这不正是多项式方法发挥作用的前提条件吗?

进一步凝练在高中数学中的应用条件:可以用次数表示组合意义,或者说所求的就是多项式卷积后的某个次项的系数,并且多项式卷积过程可以使用二项式定理快速处理。

回到校本里那道题,现在已知 \(\binom{n}{i}\) 就是 \((x+1)^n\) 的多项式系数,\(D_{n}^i\) 就是 \((x^2+x+1)^n\) 的多项式系数,看一眼问你的东西:

\(\binom{2025}{0}D_{2025}^0-\binom{2025}{1}D_{2025}^1+...\binom{2025}{2025}D_{2025}^{2025}\)

这个东西还不太是卷积,想一想组合数的性质:\(\binom{n}{m}=\binom{n}{n-m}\),然后把上面的组合数全部取反不就是

\[Ans=\binom{2025}{2025}D_{2025}^0-\binom{2025}{2024}D_{2025}^1+...\binom{2025}{0}D_{2025}^{2025} \]

上指标恰好是对应多项式第 \(i\) 次的系数,那这个式子不就是求多项式 \(f(x)=(x^2+x+1)^n\)\(g(x)=(1-x)^n\) 的卷积的 \(2025\) 次项系数吗?

再观察这个卷积的神秘形式

\[f*g(x)=(x^2+x+1)^n(1-x)^n=((x^2+x+1)*(1-x))^n=(1-x^3)^n \]

这就是一个二项式定理的形式了,要求的是 \(2025\) 次系数,那就是 \(\binom{2025}{675}((-x)^3)^{675}\) 这一项的系数,就是 \(-\binom{2025}{675}\)。问题解决。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/909747.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

卢曼卡片盒笔记法介绍 Introduction to the Zettelkasten Method

你可能在工作中遇到了迫切需要解决的问题,可能被硕士论文压得喘不过来气,你想要提升你的博客水平,想写一本书,或者想在科研上更进一步。但是有一点需要明确,卡片盒笔记法不仅是一个帮助你完成工作或项目的工具,更是管理你生活中所遇到的知识的方法。原文链接:https://ze…

javawebDay5-Maven框架

单元测试右侧参数代表测试当前类的各项比例 Class:调用测试类中类 Method:调用方法比例 Line:调用代码量比例问题:目前猜测是用户名为中文导致

量化的前期准备

我看了不少国内量化的软件, 很多都在说QMT 迅投公司的产品, 专卖给券商, 然后券商给优质用户开 号就可以了。 各个券商的要求各不一样。 我这个因为我很多板块要求50w 存20工作日, 放了进去,居然符合券商要求了,答应给我开通了。 其实现在 很多开源的 比如easy trader 的…

[Tools] 使用 HammerDB 对 SQL Server 执行负载测试

HammerDBhttps://www.hammerdb.com/download.html HammerDB 是全球数据库行业最值得信赖的免费开源数据库基准测试应用程序,支持 Microsoft SQL Server、IBM Db2、Oracle、PostgreSQL、MariaDB 和 MySQL。HammerDB 在 Windows 和 Linux 上构建和测试,具有无与伦比的性能和可扩…

0401-git如何忽略已被版本控制的文件

前言 原因 我有很多的不关心的文件,这些都被版本控制了,我会感觉很扰乱自己的思路参考 https://www.cnblogs.com/yulinlewis/p/10236563.html 解决方法 1. 先删 git rm --cache *.pyc2. 加入.gitignore里 .gitignore文件内容 Code/.vs/ *.pyc !.gitignore效果这样就清爽多了,…

WindowsPE文件格式入门04.导入表

https://bpsend.net/thread-307-1-1.html PE 内部保存了导入的dll 和 api信息,这些信息保存到一个表里面.称为导入表, 导入表就是 记住一个可执行文件导入了那些dll,以及导入了这些dll中的哪些函数 一个可执行文件会调用其他DLL里的函数或数据,当PE文件被加载时,Windows加载器…

TODO 数据结构

先进先出(队列) 滑动窗口最大值(单调队列) 最长递增子序列(动态规划)(贪心+二分) 4.数组逆序对统计(归并排序) 快速获取集合重复值(哈希表) 6.快速获取集合最值(二叉堆) 7.无向图判环(并查集) 8.图的连通性问题(dfs+bfs)9.单源最短路dijkstra 10.多源最短路(…

CX9261S线控增益问题

简述 想将9361增益控制的逻辑移植到9261s上,先验证线控功能,配置后在接收单音信号测试中观测不到增益的变化。 配置修改 根据寄存器列表和手册修改配置的寄存器值,如图1所示。同时,修改了增益步进值为5dB。图1 手册中的控制逻辑 测试中,接收单音信号,并根据接收时钟MCLK产…

青岛oj集训5

Floyd,全源最短路,传递闭包,灾后重建,无向图的最小问题,Redistributing Gifts S,重新分发礼物 S,oj集训Floyd算法——全源最短路 cerr:标准输出错误流:不会输出到freopen制定的out文件中,而是会输出到错误文件中。 提交上去无论加不加freopen,哪怕是提交到洛谷,也只…

20244214 实验二《Python程序设计》实验报告

20244214 2024-2025-2 《Python程序设计》实验二报告 课程:《Python程序设计》 班级: 2442 姓名: 张家乐 学号:20244214 实验教师:王志强 实验日期:2025年4月1日 必修/选修: 公选课 1.实验内容 (1)设计并完成一个完整的应用程序,完成加减乘除模等运算,功能多多益善。…

langchain0.3教程:聊天机器人进阶之方法调用

大语言模型只能聊天吗?本篇文章将会介绍OpenAI的Function calling原理,以及在Langchain中对应的Tools Calling如何使用,最后将工具调用集成到gradio实现可视化聊天界面。我们思考一个问题:大语言模型是否能帮我们做更多的事情,比如帮我们发送邮件。默认情况下让大模型帮我…