topcoder srm363(2007-08-12 11:31)

 
由于开赛前跟小用讨论了同样的题目, 结果250比较快出了, RP好啊, rating大升~
给出圆上偶数个点, 问可以有几种方法不相交地连线.
除了直接DP, 可以用公式C(n, n/2)/(n/2+1), 先把组合数先算出来就OK.
-
递归公式是w(n)=w(0)*w(n-2)+w(2)*w(n-4)+......+w(n-2)*w(0)      w(0)=1
-
以点对为单为就是w1(n)=w1(0)*w1(n-1)+w1(1)*w1(n-2)+......+w1(n-1)*w1(0)     w1(0)=1
-
以1为起点: w2(n+1)=w2(1)*w2(n)+w2(2)*w2(n-1)+......+w2(n)*w2(1)       w(1)=1
-
跟下面的catalan数递归公式...
h(n)= h(1)*h(n-1) + h(2)*h(n-2) + ... + h(n-1)h(1)      h(1)=1
h(n)=c(2n-2,n-1)/n
h(n)=w2(n)
所以w(n)=w1(n/2)=w2(n/2+1)=h(n/2+1)=C(n, n/2)/(n/2+1)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值