楼主: newkid

[每日一题] PUZZLEUP 2015

[复制链接]
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
251#
 楼主| 发表于 2015-10-10 21:05 | 只看该作者
solomon_007 发表于 2015-10-10 17:00
这样考虑就比较复杂了...

你这只是模拟,公式也不难吗?
昨天给你转了个马上有钱。

使用道具 举报

回复
论坛徽章:
548
生肖徽章2007版:猴
日期:2008-05-16 11:28:59生肖徽章2007版:马
日期:2008-10-08 17:01:01SQL大赛参与纪念
日期:2011-04-13 12:08:17授权会员
日期:2011-06-17 16:14:53ITPUB元老
日期:2011-06-21 11:47:01ITPUB官方微博粉丝徽章
日期:2011-07-01 09:45:27ITPUB十周年纪念徽章
日期:2011-09-27 16:30:472012新春纪念徽章
日期:2012-01-04 11:51:222012新春纪念徽章
日期:2020-11-30 22:13:24海蓝宝石
日期:2012-02-20 19:24:27
252#
发表于 2015-10-10 21:16 | 只看该作者
本帖最后由 solomon_007 于 2015-10-10 21:50 编辑
newkid 发表于 2015-10-10 21:03
我和OO一样,分子是100*C(99,4)+99*C(98,4)+...+5*C(4,4)
分母是那些组合数之和。为了展开求和就得知道那 ...

你写成这样的公式我才看明白了
SQL> declare
  2    a number :=0;
  3    b number :=0;
  4    m number :=0;
  5  begin
  6    for i in 5..100 loop
  7  
  8      select ((i-1)*(i-2)*(i-3)*(i-4))/(1*2*3*4) into m from dual;
  9      a := a + i*m;
10      b := b + m;
11    end loop;
12  
13    dbms_output.put_line(a);
14    dbms_output.put_line(b);
15    dbms_output.put_line(a/b);
16  end;
17  /
6336699600
75287520
84.16666666666666666666666666666666666667
PL/SQL procedure successfully completed

使用道具 举报

回复
论坛徽章:
548
生肖徽章2007版:猴
日期:2008-05-16 11:28:59生肖徽章2007版:马
日期:2008-10-08 17:01:01SQL大赛参与纪念
日期:2011-04-13 12:08:17授权会员
日期:2011-06-17 16:14:53ITPUB元老
日期:2011-06-21 11:47:01ITPUB官方微博粉丝徽章
日期:2011-07-01 09:45:27ITPUB十周年纪念徽章
日期:2011-09-27 16:30:472012新春纪念徽章
日期:2012-01-04 11:51:222012新春纪念徽章
日期:2020-11-30 22:13:24海蓝宝石
日期:2012-02-20 19:24:27
253#
发表于 2015-10-10 21:20 | 只看该作者
newkid 发表于 2015-10-10 21:05
你这只是模拟,公式也不难吗?
昨天给你转了个马上有钱。

是的, 这只是模拟, 但这个样本已经很高了,所以应该可以估计出那个值.

章, 多谢!

使用道具 举报

回复
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
254#
 楼主| 发表于 2015-10-10 22:58 | 只看该作者
solomon_007 发表于 2015-10-10 21:20
是的, 这只是模拟, 但这个样本已经很高了,所以应该可以估计出那个值.

章, 多谢!

你把通项公式推导一下就给你发章。就是说只要输入N不需要循环马上能得到答案。

使用道具 举报

回复
论坛徽章:
548
生肖徽章2007版:猴
日期:2008-05-16 11:28:59生肖徽章2007版:马
日期:2008-10-08 17:01:01SQL大赛参与纪念
日期:2011-04-13 12:08:17授权会员
日期:2011-06-17 16:14:53ITPUB元老
日期:2011-06-21 11:47:01ITPUB官方微博粉丝徽章
日期:2011-07-01 09:45:27ITPUB十周年纪念徽章
日期:2011-09-27 16:30:472012新春纪念徽章
日期:2012-01-04 11:51:222012新春纪念徽章
日期:2020-11-30 22:13:24海蓝宝石
日期:2012-02-20 19:24:27
255#
发表于 2015-10-11 02:50 | 只看该作者
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

使用道具 举报

回复
论坛徽章:
8
玉兔
日期:2015-11-16 10:18:00铁扇公主
日期:2015-10-27 21:47:42九尾狐狸
日期:2015-12-11 22:31:15
256#
发表于 2015-10-11 07:54 | 只看该作者
不错,M 就能避免这些繁琐


使用道具 举报

回复
论坛徽章:
520
奥运会纪念徽章:垒球
日期:2008-09-15 01:28:12生肖徽章2007版:鸡
日期:2008-11-17 23:40:58生肖徽章2007版:马
日期:2008-11-18 05:09:48数据库板块每日发贴之星
日期:2008-11-29 01:01:02数据库板块每日发贴之星
日期:2008-12-05 01:01:03生肖徽章2007版:虎
日期:2008-12-10 07:47:462009新春纪念徽章
日期:2009-01-04 14:52:28数据库板块每日发贴之星
日期:2009-02-08 01:01:03生肖徽章2007版:蛇
日期:2009-03-09 22:18:532009日食纪念
日期:2009-07-22 09:30:00
257#
 楼主| 发表于 2015-10-11 09:10 | 只看该作者
solomon_007 发表于 2015-10-11 02:50
100*C(99,4)+99*C(98,4)+...+5*C(4,4)

f(n) = a(n)/b(n)

好吧,给你转了个暖羊羊。

使用道具 举报

回复
论坛徽章:
548
生肖徽章2007版:猴
日期:2008-05-16 11:28:59生肖徽章2007版:马
日期:2008-10-08 17:01:01SQL大赛参与纪念
日期:2011-04-13 12:08:17授权会员
日期:2011-06-17 16:14:53ITPUB元老
日期:2011-06-21 11:47:01ITPUB官方微博粉丝徽章
日期:2011-07-01 09:45:27ITPUB十周年纪念徽章
日期:2011-09-27 16:30:472012新春纪念徽章
日期:2012-01-04 11:51:222012新春纪念徽章
日期:2020-11-30 22:13:24海蓝宝石
日期:2012-02-20 19:24:27
258#
发表于 2015-10-11 10:31 | 只看该作者
newkid 发表于 2015-10-11 09:10
好吧,给你转了个暖羊羊。

3qu !

使用道具 举报

回复
论坛徽章:
407
紫蛋头
日期:2012-05-21 10:19:41迷宫蛋
日期:2012-06-06 16:02:49奥运会纪念徽章:足球
日期:2012-06-29 15:30:06奥运会纪念徽章:排球
日期:2012-07-10 21:24:24鲜花蛋
日期:2012-07-16 15:24:59奥运会纪念徽章:拳击
日期:2012-08-07 10:54:50奥运会纪念徽章:羽毛球
日期:2012-08-21 15:55:33奥运会纪念徽章:蹦床
日期:2012-08-21 21:09:51奥运会纪念徽章:篮球
日期:2012-08-24 10:29:11奥运会纪念徽章:体操
日期:2012-09-07 16:40:00
259#
发表于 2015-10-11 11:00 | 只看该作者
solomon_007 发表于 2015-10-11 02:50
100*C(99,4)+99*C(98,4)+...+5*C(4,4)

f(n) = a(n)/b(n)

好强.

使用道具 举报

回复
论坛徽章:
548
生肖徽章2007版:猴
日期:2008-05-16 11:28:59生肖徽章2007版:马
日期:2008-10-08 17:01:01SQL大赛参与纪念
日期:2011-04-13 12:08:17授权会员
日期:2011-06-17 16:14:53ITPUB元老
日期:2011-06-21 11:47:01ITPUB官方微博粉丝徽章
日期:2011-07-01 09:45:27ITPUB十周年纪念徽章
日期:2011-09-27 16:30:472012新春纪念徽章
日期:2012-01-04 11:51:222012新春纪念徽章
日期:2020-11-30 22:13:24海蓝宝石
日期:2012-02-20 19:24:27
260#
发表于 2015-10-11 16:03 | 只看该作者
〇〇 发表于 2015-10-11 11:00
好强.

  多谢夸奖

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表