author: tang yuxin @ rdcps
昨天,师兄去某知名IT公司面试,回来和我说了一个很有意思的面试题目:用m-1维空间分割m维空间,求在n次分割的最大m维空间数目。
这个题目我是在基于猜想和递推分析的
,
下面让我们从
m=1
开始总结规律
:
1.
1.
可以认为点是
0
维空间,如果有
1
维空间直线被点分割,自然很简单,
n
次分割后会有
n+1
个
1
维空间。
2.
2.
如果用直线分割平面,即用
1
维来对
2
维空间进行分割
,
其实这个是很好理解的
,
只要有一些递推的基础
:
假设平面被
n-1
条直线分割成最多的部分数为
A
n-1
,
被
n
条直线分割的最大部分数为
A
n
,
我们知道增加一条直线后平面内增加的区域数目实际上是由于第
n
条直线同前
n-1
条直线相交产生的,而且只要增加一个线段或者射线
,
就相应的增加一个区域
.
而由
1
知
,
第
n
条直线最多能被其他
n-1
条直线分成
n
个线段或者直线
.
所以我们得到了
A
n
和
A
n-1
的关系式
:
A
n
=A
n-1
+n,
且
A
1
=2,
即我们得到了
:
1
条直线最多可将平面分成
2
个区域
;
2
条直线最多可将平面分成
4
个区域
;
3
条直线最多可将平面分成
7
个区域
;
4
条直线最多可将平面分成
11
个区域
;
5
条直线最多可将平面分成
16
个区域
;
.....
n
条直线最多可将平面分成
[n*(n+1)]/2+1
个区域
/*
可以由数学归纳法证出
A
n
,
或者有
k=1
到
n,
对
A
k
累加得到上面的结果
,