望遠鏡

最爱丁珰發表於2024-08-06

三角剖分思想:將多邊形分成一個個三角形從而減少分類討論的情況

這道題目的主要思路就是將多邊形進行三角剖分,於是最終可以只轉化為五種情況,具體見影片1:30:00

影片中給出的五種情況的第一種,第三種和第四種比較簡單,對於\(a,b\)都在外部的,肯定是要討論\(ab\)這條直線與圓的交點個數的情況,又可以分出來三種,其中相切的一種可以劃歸成另外兩種的任意一種,於是就只有五種情況了

我們求交點一般是用聯立,這裡求圓與直線的交點有新的方法:過圓心作垂直於給定直線的直線\(l\)(給定直線旋轉九十度),求出兩者的交點,再利用直線的引數方程即可

另外判斷是五種情況的哪一種的時候,算的是圓心到線段的距離而不是圓心到直線的距離

詳細程式碼註釋見Acwing打卡程式碼

相關文章