首先对jacob steiner关于此问题的贡献表示由衷滴敬意
问题一:同一平面上的n条直线最多可以将此平面划分为多少个平面?
分析:
这个问题同Hanoi,只要掌握了递归的思想就不难解决,对几何思想的要求也不高。
先说一些常识问题:
首先,不要考虑如何画出这些理想状态的直线,大家所需要懂得的只是:平面上的两条不平行直线必定相交。这n条直线,任意两条都不平行,其中任意一条直线必定与其他直线都相交,并且任意两条直线的焦点都不与另外两条直线的焦点重合。
其次,一条直线如果与其他n-1条直线有n-1个交点,则平面数增加n。用简单明了的解释一遍,就是n-1个交点将直线分成n段,每一段都是新增平面的一条边
图我就不画了
图中红色的直线划分1、2、4、7,假设红色阴影部分为新增平面。
不难看出,假设新增的平面数等于新增直线与其他所有直线的交点数+1,若新增第n条直线,新增(n-1)+1=n个平面
问题迎刃而解,
L(n)=L(n-1)+n;
L(0)=1
这个怎么变化成n的非递归函数大家应该都知道滴,我就不多说了
L(n)=(n+1)*n/2+1
问题二:对问题一作出相应的变换,如果,直线不再是直线,而是V字型的折线,那么,这个平面最多被这样的V字型折线划分成多少个区域?图2-2是两条V字型折线划分平面的情况:
其实,折线除了就等于两条直线相交,但是在他们的交点处不再延伸下去(俺表达不好,反正大家也肯定理解的拉~)
这样一来,每添加一条折线,划分出的新区域比每添加两条直线划分出的新区域少两个。
假设n条折线将平面划分为n条直线将平面划分为L(n),则:
Z(n)=L(2n)-2n=2n2-n+1;
问题三:(这是Cmath后面的习题了)
Venn diagram,用三个重叠的圆表示与三个给定集合都相关的子集,如图:
如果有4个给定集合组成四个重叠的圆,问这四个重叠的圆表示的与四个集合都相关的子集的个数能否达到16个?
分析:先观察三个圆重叠的情况,则与set A, set B, set C 都相关的交集数一定小于等于ABC组成图像被划分的区域数;
画第n个圈,使被划分的区域数最大,则第n个圆与其他n-1个圆有2(n-1)个交点~则圆被分成2(n-1)段,每一段是一个新增区域的一条边。
则有2(n-1)个新增区域
则G(n)-1=G(n-1)+2(n-1)=G(1)+2(1+2+......+G(n-1))=n2-n+1;
综上:G(n)=n2-n+2;
(这个问题的解决要特别感谢亲爱的给我解释题目的意思~)
问题四:问n条直线最多能组成多少个封闭的空间?(参考问题1)
添加第k条直线的时候,会新增两个无线的空间,则,问题1稍做修改,得到
L(0)=1
L(n)=L(n-1)+n-2; n>0
所以
L(n)=(n+n)/2-2n;