51nod1161【组合数学-杨辉三角】

这个矩阵很清楚,把这个转一转就是一个杨辉三角,
再分析分析就是现在告诉你杨辉三角的第0个斜线数列,然后让你求第K个斜线数列。
这怎么求呢?
那么先拿些杨辉三角的姿势过来:

这里写图片描述

好啦,这是一个漂亮的杨辉三角。
然后我们可以看到第0个斜线数列和第K个斜线数列的具体求法——一个组合数。
OK, 我们是求第K个斜线数列:C(k, 0),C(k+1,1),C(k+2, 2)…….C(n+k-1,n-1),
首先很可惜,K很大,但是很显然这个序列能递推,死于:C(N+1, M+1) = C(N, M) * (N + 1) / (N - M + 1)
OK, 现在我有第0个斜线数列具体值怎么求第K个斜线数列啊,怎么求那其实就是对于第0个斜线数列中的每个a[i]会对第K个斜线数列中的每个ans[j]产生多少贡献。
OK, 多少贡献啊, 对于图中的杨辉三角,我们能算出a[0]对于所有ans[j]的贡献,但是a[1]不行,那怎么办呢,把杨辉三角往后移一移,就好了嘛。

ans[j]=i=1j(C(k1+nik1)a[i])

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值