Moore 定律話,晶片上嘅電晶體數目每兩年就會倍增。令人驚訝嘅係,呢個定律已經持續成立超過半個世紀。每當當時嘅技術唔再容許數目增長,研究人員就會諗出新嘅製造技術,將電路擺得更加密。喺唔久嘅將來,呢樣可能代表晶片會由二維變成三維結構。不過,呢條題目用二維就夠。
所有二維硬件設計(例如晶片、顯示卡、主機板等等)都有個共同問題,就係點樣擺電線。喺硬件上佈線嗰陣,如果電線要互相交叉,就會有麻煩。遇到交叉,就要用特別裝置,令兩條電線可以一上一下咁跨過對方,而噉會增加製造成本。
我哋嘅問題係噉:畀你一份硬件設計,入面已經有幾條電線(全部都係直線段)。另外亦會畀你一條要加落去嘅新連線嘅起點同終點。你要搵出,為咗連接起點同終點,最少要穿過幾多條現有電線。呢條連線唔一定要係直線。唯一要求係,唔可以喺兩條或以上現有電線相接或者相交嘅位置穿過。
圖 L.1:第一個例子輸入。
圖 L.1 顯示第一個例子輸入。八條現有電線形成五個正方形。新連線嘅起點同終點分別喺最左同最右嘅正方形入面。黑色虛線表示直接連接會穿過四條電線,而最佳解只需要穿過兩條電線(藍色曲線)。
輸入
輸入只有一組測試資料。第一行有五個整數 $m,x_0,y_0,x_1,y_1$,分別係現有電線數目($m \le 100$)同埋需要連接嘅起點同終點。之後有 $m$ 行,每行有四個整數 $x_a,y_a,x_b,y_b$,描述一條由 $(x_a,y_a)$ 去到 $(x_b,y_b)$、長度唔係零嘅現有電線。每個輸入座標嘅絕對值都小於 $10^5$。每對電線最多只有一個公共點,即係電線唔會重疊。新電線嘅起點同終點都唔喺任何現有電線上面。
輸出
輸出連接起點同終點最少要穿過幾多條電線。
例子
輸入 1
8 3 3 19 3 0 1 22 1 0 5 22 5 1 0 1 6 5 0 5 6 9 0 9 6 13 0 13 6 17 0 17 6 21 0 21 6
輸出 1
2
輸入 2
1 0 5 10 5 0 0 10 10
輸出 2
0