方法一:
用一個布林陣列 p 來記錄那些地方有被畫線,以及紀錄所有線段上的最小值 min 與最大值 max,接著用迴圈從 min 到 max 計算有多少地方被畫線。
方法二:
使用一個結構陣列 struct Point p 來記錄所有線段,並將此結構陣列由小排到大。接著在判斷目前的線段是否有所覆蓋下一個線段,而這有三種狀況:
1. 完全覆蓋下一線段,此情況直接繼續下一線段的判斷。
2. 部分覆蓋,將目前線段的結尾更新為下一線段的結尾。
3. 沒有覆蓋下一線段,計算目前連線起來的線段長度,並加總到總長度 cnt 。