【模拟赛题解】0418-years

零、前言

我这个数学菜鸡决定写一下这道变态的巧妙的数学题的题解。


一、题目

链接:years

题目大意:求12k=0mCmkCnk


二、前置知识

比较简单的几个组合数公式,不过多赘述。

·公式1:Cnm=n!m!(nm)!(定义)

·公式2:Cnm=Cn1m1+Cn1m(展开即证毕)

·公式3:CnmCmk=CnkCnkmk(展开即证毕)


三、推导

我感觉我写的有些啰嗦了,大佬们不要嫌弃哦

S=12k=0mCmkCnk

2S=k=0mCmkCnk

(移项)

2S=k=0mCmkCnmCnkCnm

(右边上下同乘Cnm)

2S=k=0mCnkCnkmkCnkCnm

(代入公式3)

2S=k=0mCnkmkCnm

(消元)

Cnm2S=k=0mCnkmk

(Cnm不含k,提出来并移项)

Cnm2S=k=0mCn(mk)m(mk)

(把kmk代入,发现式子值不变)

Cnm2S=k=0mCnm+kk

(括号展开)

Cnm2S=Cnm0+Cnm+11+Cnm+22+...+Cnm

(展开)

Cnm2S=Cnm+10+Cnm+11+Cnm+22+...+Cnm

(Cnm0=Cnm+10=1,等量代换)

Cnm2S=Cnm+21+Cnm+22+...+Cnm

(Cnm+10+Cnm+11=Cnm+21,代入公式3)

·相信读者已经看出来了,接下来就是经典的多米诺骨牌操作(也就是连环马)

Cnm2S=Cn+1m

(代入多次公式3)

n!m!(nm)!2S=(n+1)!m!(n+1m)!

(展开C)

2S=n+1n+1m

(消元)

S=n+1(n+1m)2


四、尾声

推导已经推出了答案的表达式,可用 O(1) 完成。代码就不用放了吧。谢谢观看啦。

posted @   Little09  阅读(97)  评论(0编辑  收藏  举报
编辑推荐:
· .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语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示