|
newkid 发表于 2015-10-10 22:58 ![]()
你把通项公式推导一下就给你发章。就是说只要输入N不需要循环马上能得到答案。
100*C(99,4)+99*C(98,4)+...+5*C(4,4)
f(n) = a(n)/b(n)
a(n) = n*(n-1)*(n-2)*(n-3)*(n-4)/24 +...+ 5*4*3*2*1/24 = 1/24 * (1*2*3*4*5 + ... + (n-4)*(n-3)*(n-2)(n-1)*n )
b(n) = (n-1)*(n-2)*(n-3)*(n-4)/24 +...+ 4*3*2*1/24 = 1/24 * (1*2*3*4 + ... + (n-4)*(n-3)*(n-2)(n-1) )
1 + 2 + ... + n = n(n+1)/2
1^2 + 2^2 + ... + n^2 = n(n+1)(2n+1)/6
1^3 + 2^3 + ... + n^3 = n^2(n+1)^2/4
1^4 + 2^4 + ... + n^4 = n(n+1)(2n+1)(3n^2+3n-1)/30
1^5 + 2^5 + ... + n^5 = n^3(n+1)^3/6 - n^2(n+1)^2/12 (1^3+2^3+...+n^3+3(1^5+2^5+...+n^5)=n^3(n+1)^3/2)
(n-4)*(n-3)*(n-2)(n-1)*n = (n^2-n)(n-2)(n-3)(n-4)=(n^3-3n^2+2n)(n-3)(n-4)=(n^4-6n^3+11n^2 - 6n)(n-4)
=n^5-6n^4+11n^3 - 6n^2 -4n^4 + 24n^3 - 44n^2 + 24n
=n^5-10n^4+35n^3 -50n^2 +24n
(n-4)*(n-3)*(n-2)(n-1) = n^4 -10n^3 +35n^2 -50n +24
1*2*3*4*5 + ... + (n-4)*(n-3)*(n-2)(n-1)*n
f(n)=a(n)/b(n)= -------------------------------------------
1*2*3*4 + ... + (n-4)*(n-3)*(n-2)(n-1)
西格玛(n-4)*(n-3)*(n-2)(n-1)*n
=(n^3(n+1)^3/6 - n^2(n+1)^2/12)-10(n(n+1)(2n+1)(3n^2+3n-1)/30) +35(n^2(n+1)^2/4) -50(n(n+1)(2n+1)/6) +24(n(n+1)/2)
= n*(n+1)[ (n^2(n+1)^2/6 - n(n+1)/12) - (2n+1)(3n^2+3n-1)/3 + 35(n(n+1)/4) - 25(2n+1)/3 + 12 ]
= n*(n+1)[ (n^4+2n^3+n^2)/6 -(n^2+n)/12 - ( 6n^3 +6n^2 -2n + 3n^2 + 3n -1)/3 + 35(n^2+n)/4 - 25(2n+1)/3 + 12 ]
= n*(n+1)[ (n^4+2n^3+n^2)/6 -(n^2+n)/12 - ( 6n^3 +9n^2 + n -1)/3 + 35(n^2+n)/4 - 25(2n+1)/3 + 12 ]
= n*(n+1)[ n^4/6 + n^3/3 + n^2/6 - n^2/12 - n/12 -2n^3 - 3n^2 -n/3 + 1/3 + 35n^2/4 + 35n/4 - 50n/3 - 25/3 + 12 ]
= n*(n+1)[ n^4/6 - 5n^3/3 + 35n^2/6 - 25n/3 + 4 ]
= 1/6 * n*(n+1)(n^4-10n^3+35n^2-50n+24)
西格玛(n-4)*(n-3)*(n-2)(n-1)
= n(n+1)(2n+1)(3n^2+3n-1)/30 -10(n^2(n+1)^2/4) +35(n(n+1)(2n+1)/6) -50(n(n+1)/2) + 24n
= n(n+1) [ (2n+1)(3n^2+3n-1)/30 - 5n(n+1)/2 + 35(2n+1)/6 - 25 ] + 24
= n(n+1) [ ( 6n^3 +6n^2 -2n + 3n^2 + 3n -1)/30 - 5n(n+1)/2 + 35(2n+1)/6 - 25 ] + 24n
= n(n+1) [ (6n^3 +9n^2 + n -1)/30 - 5(n^2 +n)/2 + 35(2n+1)/6 - 25 ] + 24n
= n(n+1) [ n^3/5 + 3n^2/10 + n/30 - 1/30 - 5n^2/2 - 5n/2 + 35n/3 + 35/6 - 25 ] + 24n
= n(n+1) [ n^3/5 - 22n^2/10 + 92n/10 - 192/10 ] + 24n
= 1/10 * n*[(n+1)(2n^3-22n^2+92n-192) + 240]
= 1/10 * n* ( 2n^4 -22n^3 +92n^2 -192n + 2n^3-22n^2+92n-192 + 240 )
= 1/10 * n* ( 2n^4 -20n^3 +70n^2 -100n + 48 )
= 1/5 *n(n^4 -10n^3 +35n^2 - 50n +24)
所以通项公式为:
f(n) = a(n)/b(n) = ((n+1)/6) /(n/5) = 5(n+1)/6 (n>=5)
n=100
select 5*(100+1)/6 from dual
----------------
84.1666666666667 |
|