單色三角形問題

空間裏有n個點,任意三點不共線。每兩個點之間都用紅色或者黑色線段鏈接。如果一個三角形的三條邊同色,責成這個三角形是單色三角形。對於給定的紅色線段列表,找出單色三角形的個數。

 

1,如果直接找需要枚舉所有的三個點的組合,有C(n,3)種組合,當n比較大的時候,需要枚舉的組合很多,複雜度爲O(n3);

2,但是在遍歷每個點的時候都可以枚舉顏色不同的兩條邊。則每個點上不同的顏色的三角形有R*B,R爲紅色邊的個數,B爲黑色邊的個數。所有點上的不同顏色邊組之和爲Q,則總共有C(n,3)-Q/2種相同顏色的邊。時間複雜度變爲了O(n)

 

本文在草稿箱放了n久,忘了

代碼略

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章