平面分割問題小結

2022-08-26 13:54:19 字數 2271 閱讀 5468

acm學習群裡接觸到的問題,既然假期有時間就寫個總結吧。

題意:n條直線,最多可以把平面分為多少個區域。

思路:當有n-1條直線時,平面最多被分成了f(n-1)個區域。則第n條直線要切成的區域數最多,就必須將直線盡可能兩兩相交,而避免多條直線相交於一點和平行關係的出現。這樣就會得到n-1個交點。這些交點將第n條直線分為2條射線和n-2條線段。而每條射線和線段將以有的區域一分為二。這樣就多出了2+(n-2)個區域。

由此可得:f(n) = f(n-1)+n = f(n-2)+(n-1)+n =f(1)+1+2+……+n = n(n+1)/2+1。

根據直線分平面可知,由交點決定了射線和線段的條數,進而決定了新增的區域數。當n-1條折線時,區域數為f(n-1)。為了使增加的區域最多,則折線的兩邊的線段要和n-1條折線的邊,即2*(n-1)條線段相交。那麼新增的線段數為4*(n-1),射線數為2。但要注意的是,折線本身相鄰的兩線段只能增加乙個區域。

由此可得:f(n) = f(n-1)+4(n-1)+2-1 = f(n-1)+4(n-1)+1 = f(n-2)+4(n-2)+4(n-1)+2 = f(1)+4+4*2+……+4(n-1)+(n-1) = 2n^2-n+1

#include int

main ()

return0;

}

該問題只討論兩兩橢圓只有兩個交點的情況

題意:有n條封閉曲線畫在平面上,而任何兩條封閉曲線恰好相交於兩點,且任何三條封閉曲線不相交於同一點,問這些封閉曲線把平面分割成的區域個數。

設橢圓數為n,分割數為s(n)

則:s(1)=2 , s(2) =4 , s(3)=8 , s(4)=14 ……

思路:當n-1個圓時,區域數為f(n-1).那麼第n個圓就必須與前n-1個圓相交,則第n個圓被分為2(n-1)段線段,增加了2(n-1)個區域。

則: f(n) = f(n-1)+2(n-1) = f(1)+2+4+……+2(n-1) = n^2-n+2

設三角形數為n,分割數為s(n)

則s(1)=2 , s(2)=8 , s(3)=20 , s(4)=38

當 n=2 時,新增的三角形與原有的三角形有了6個交點,即每邊兩個交點,也就產生6個新增區域,同理遞推

遞推式:s(n) = s(n-1)+6(n-1)

s(n)=3*n^2-3*n+2

#include int

main ()

return0;

}

由二維的分割問題可知,平面分割與線之間的交點有關,即交點決定射線和線段的條數,從而決定新增的區域數。試想在三維中則是否與平面的交線有關呢?當有n-1個平面時,分割的空間數為f(n-1)。要有最多的空間數,則第n個平面需與前n-1個平面相交,且不能有共同的交線。即最多有n-1 條交線。而這n-1條交線把第n個平面最多分割成 g(n-1)個區域。(g(n)為問題一中的直線分平面的個數)此平面將原有的空間一分為二,則最多增加 g(n-1) 個空間。

則:f=f(n-1)+g(n-1)    ps:g(n)=n(n+1)/2+1

=f(n-2)+g(n-2)+g(n-1) = f(1)+g(1)+g(2)+……+g(n-1) = 2+(1*2+2*3+3*4+……+(n-1)n)/2+(n-1)=(1+2^2+3^2+4^2+……+n^2-1-2-3-……-n )/2+n+1=(n^3+5n)/6+1

#include int

main ()

補充:acdream 1080

#include long

long deal (long

long s,long

long e,long

long

n)

long

long mid = (s+e)>>1

;

if ( mid*mid-mid+2 >=n )

return

deal (s,mid,n);

else

return deal (mid+1

,e,n);

}int

main ()

return0;

}

平面分割問題

1.題目大致如 n條直線,最多可以把平面分為多少個區域。當有n 1條直線時,平面最多被分成了f n 1 個區域。則第n條直線要是切成的區域數最多,就必須與每條直線相交且不能有同一交點。這樣就會得到n 1個交點。這些交點將第n條直線分為2條射線和n 2條線斷。而每條射線和線斷將以有的區域一分為二。這樣...

平面分割問題。。

n條直線相交,第n條必定與第n 1條相交。為達到最大的切割平面數,必定不存在焦點重合,則第n條直線被分成2條射線和n 2條線段。每條射線和線段都會再多劃分出乙個平面。即 f n f n 1 2 n 2 f n 1 n f n 1 f n 2 n 1 f n 2 f n 3 n 2 f 2 f 1 2...

平面分割問題

第n條直線與前面n 1條直線均相交,而且交點不重疊。如下圖所示,第四條直線滿足的條件是與前面3條直線相交而且交點不重疊。令第n條直線分割的平面數是f n 則f 1 2 我們再來考慮第n條直線,第n條直線與n 1條直線相交,交點不重疊,那麼第n條直線被分成了n段。如上面的圖可以看出此規律。這n段線段或...