码迷,mamicode.com
首页 > 其他好文 > 详细

【转】分圆问题:一个诡异的数列规律

时间:2019-12-07 12:20:46      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:owa   mamicode   nali   https   一个   character   minus   问题   enc   

问题

在圆上任取nn个点,将每对点用直线连接起来,并规定任意三条线不能交于同一点,这些直线会将圆分割成多少份?

 

首先我们列出简单情况来寻找规律:

  • 2个点将圆分成2份
  • 3个点将圆分成4份
  • 4个点将圆分成8份
  • 5个点将圆分成16份

技术图片

看来这个数列的规律非常明显:每增加一个点,分割的份数都将乘2。然而,当点数增加到6个的时候,分割的份数不是我们预料的32,而是31。

技术图片

为了找到这个数列的通项公式,我们使用欧拉示性数公式(Euler’s Characteristic Formula)来进行推导:

 

VE+F=2V−E+F=2

 

这个公式的意思是,在任何联通平面简单图中,顶点数减边数加上面数等于2。

为了利用这个公式得到分割的份数(即为面数),我们需要先求出顶点和边的数量。

 

首先求顶点数:圆内的每个交点都对应圆上的4个点交叉相连,因此圆内的交点共有C4nCn4个,加上圆上的nn个点,因此V=n+C4nV=n+Cn4。

再求边数:圆内的那个交点的度数(度数是与点相连的边的个数)为4,圆上的点都与除此之外的每个点相连,因此度数是n1n−1,所以总度数为4C4n+n(n1)4∗Cn4+n∗(n−1),由于每条边对于总度数的贡献为2,再加上连接圆上顶点的弦的数目,最后得边的数量E=2C4n+C2n+nE=2∗Cn4+Cn2+n。

技术图片

将结果带入欧拉公式,并考虑园外区域也算一个面,则分割的份数为:

 

F1=EV+21=(2C4n+C2n+n)(n+C4n)+1=C4n+C2n+1F−1=E−V+2−1=(2∗Cn4+Cn2+n)−(n+Cn4)+1=Cn4+Cn2+1

 

由排列组合公式,上式可以继续分解:

 

C4n+C2n+1=C4n1+C3n1+C2n1+C1n1+C0n1Cn4+Cn2+1=Cn−14+Cn−13+Cn−12+Cn−11+Cn−10

 

这也就解释了当n<6n<6时结果总是成2的幂。

 

参考链接:

 

【转】分圆问题:一个诡异的数列规律

标签:owa   mamicode   nali   https   一个   character   minus   问题   enc   

原文地址:https://www.cnblogs.com/yuelian/p/12001021.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
分享档案
周排行
mamicode.com排行更多图片
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!