n n n个圆最多把平面分成几份

考虑递推。

f ( n ) f(n) f(n) n n n个圆能把平面最多分成的份数。

f ( 1 ) = 2 , f ( 2 ) = 4 f(1)=2,f(2)=4 f(1)=2,f(2)=4

假设已知 f ( n − 1 ) f(n-1) f(n1),现在我们要求 f ( n ) f(n) f(n),对于第 n n n个圆,最多可以与前 n − 1 n-1 n1个圆有个 2 ( n − 1 ) 2(n-1) 2(n1)个交点,因为两个圆相交会产生两个交点,所以与前 n − 1 n-1 n1个圆相交,就有 2 ( n − 1 ) 2(n-1) 2(n1)个交点。每个弧线段可以把第 n n n个圆分割成两段,所以 ( n − 1 ) (n-1) (n1)个弧线段(即 2 ( n − 1 ) 2(n-1) 2(n1)个交点) 能把第 n n n个圆分割成 2 ( n − 1 ) 2(n-1) 2(n1)部分。

所以 f ( n ) = f ( n − 1 ) + 2 ( n − 1 ) f(n) = f(n-1)+2(n-1) f(n)=f(n1)+2(n1)
在这里插入图片描述

时间复杂度: O ( 1 ) O(1) O(1)

貌似欧拉公式也可以做。

传送门

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐