POJ 2653 計算幾何 判斷線段相交

2022-05-24 03:48:09 字數 755 閱讀 8349

題意:

按順序給出一些木棍,輸出在最上面的木棍標號

題解:一開始看到n=100000還在想怎麼優化,沒想出來,最後看討論,原來暴力可以水過~

嘿嘿~用了下並查集壓縮路徑,在刷陣列的時候會快一些~

view code

1 #include 2 #include 3 #include 4 #include 5 #include 6

7#define n 110000

8#define eps 1e-8910

using

namespace

std;

1112

structp13

li[n][2

];16

17bool

vis[n];

18int

n,fa[n];

1920 inline void

read()

2127}28

29 inline double cross(const p &o,const p &p,const p &q)

3034 inline bool check(int a,int

b)35

4142 inline int findfa(int

u)43

4748 inline void

go()

4961 puts("."

);62}63

64int

main()

65

計算幾何 POJ 2653

題目大意 給定n條線段,按輸入依次編號為1 n,求哪些線段不與任何編號大於這條線段相交,並輸出它們的編號。這道題就是套乙個計算幾何模板,然後每條線段判斷是否與之後的線段相交,然後輸出就可以了。如下 include include include include include using names...

計算幾何 判斷線段相交(一)

兩個線段的交點個數可能有0個 1個或者無數個 判斷兩個線段相交,可以按照如下步驟 計算叉積時異號 計算叉積時異號 3.下面是判斷線段相交的程式 include include using namespace std define min x,y x define max x,y x y x y co...

計算幾何之判斷線段相交

計算幾何 判斷線段相交 time limit 1000ms memory limit 65536k description 線段相交 linecross.pas c cpp 問題描述 基本問題 判斷二維平面上的兩條線段是否相交。注意 相交有很多種,這裡指的 相交 是指兩條線段恰好有唯一乙個不是端點的...