- 最后登录
- 2016-6-29
- 在线时间
- 128 小时
- 阅读权限
- 10
- 注册时间
- 2008-4-30
- 积分
- 171
- 帖子
- 132
- 精华
- 0
- UID
- 30495
- 性别
- 保密

- 积分
- 171
- 帖子
- 132
- 精华
- 0
- UID
- 30495
- 性别
- 保密
|
第四题我是用编程观察出来的。这个问题等效为给出一个序列{ An },计算有多少个不降的序列{ Bn }使得Bi >= Ai,设F( i, j )为{ Bn }中第i个数为j的不同序列数,那么有
F( i, Ai ) = sum{ F( i - 1, k ), 1 <= k <= Ai }
F( i, j ) = F( i - 1, j - 1 ) + F( i, j - 1 ), j > Ai
最后F( n, n )就是所求序列个数。
然后对每一个{ An }都求一遍,即将这n个数做全排列,最后最后将所有的F( n, n )加起来就得出了答案,设S( n )为答案,有
S( 1 ) = 1
S( 2 ) = 3
S( 3 ) = 15
S( 4 ) = 105
S( 5 ) = 945
S( 6 ) = 10395
S( 7 ) = 135125
S( 8 ) = 2027025
S( 9 ) = 34459425
S( 10 ) = 654729075
观察得S( n ) = ( 2n - 1 )S( n - 1 ) |
|