零、前言
我这个数学菜鸡决定写一下这道变态的巧妙的数学题的题解。
一、题目
链接:years
题目大意:求12∑mk=0CkmCkn
二、前置知识
比较简单的几个组合数公式,不过多赘述。
·公式1:Cmn=n!m!(n−m)!(定义)
·公式2:Cmn=Cm−1n−1+Cmn−1(展开即证毕)
·公式3:Cmn∗Ckm=Ckn∗Cm−kn−k(展开即证毕)
三、推导
我感觉我写的有些啰嗦了,大佬们不要嫌弃哦
设
S=12∑mk=0CkmCkn
2S=∑mk=0CkmCkn
(移项)
2S=∑mk=0Ckm∗CmnCkn∗Cmn
(右边上下同乘Cmn)
2S=∑mk=0Ckn∗Cm−kn−kCkn∗Cmn
(代入公式3)
2S=∑mk=0Cm−kn−kCmn
(消元)
Cmn∗2S=∑mk=0Cm−kn−k
(Cmn不含k,提出来并移项)
Cmn∗2S=∑mk=0Cm−(m−k)n−(m−k)
(把k用m−k代入,发现式子值不变)
Cmn∗2S=∑mk=0Ckn−m+k
(括号展开)
Cmn∗2S=C0n−m+C1n−m+1+C2n−m+2+...+Cmn
(展开∑)
Cmn∗2S=C0n−m+1+C1n−m+1+C2n−m+2+...+Cmn
(C0n−m=C0n−m+1=1,等量代换)
Cmn∗2S=C1n−m+2+C2n−m+2+...+Cmn
(C0n−m+1+C1n−m+1=C1n−m+2,代入公式3)
·相信读者已经看出来了,接下来就是经典的多米诺骨牌操作(也就是连环马)
Cmn∗2S=Cmn+1
(代入多次公式3)
n!m!(n−m)!∗2S=(n+1)!m!(n+1−m)!
(展开C)
2S=n+1n+1−m
(消元)
∴S=n+1(n+1−m)∗2
四、尾声
推导已经推出了答案的表达式,可用 O(1) 完成。代码就不用放了吧。谢谢观看啦。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 张高兴的大模型开发实战:(一)使用 Selenium 进行网页爬虫
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构