1. 程式人生 > >導彈攔截(NOIP2010 普及組第三題)

導彈攔截(NOIP2010 普及組第三題)

試驗 line 成功 .org 階段 這樣的 研發 技術分享 計算

描述

經過11 年的韜光養晦,某國研發出了一種新的導彈攔截系統,凡是與它的距離不超過其工作半徑的導彈都能夠被它成功攔截。當工作半徑為0 時,則能夠攔截與它位置恰好相同的導彈。但該導彈攔截系統也存在這樣的缺陷:每套系統每天只能設定一次工作半徑。而當天的使用代價,就是所有系統工作半徑的平方和。 某天,雷達捕捉到敵國的導彈來襲。由於該系統尚處於試驗階段,所以只有兩套系統投入工作。如果現在的要求是攔截所有的導彈,請計算這一天的最小使用代價。

格式

輸入格式

第一行包含4 個整數x1、y1、x2、y2,每兩個整數之間用一個空格隔開,表示這兩套導彈攔截系統的坐標分別為(x1, y1)、(x2, y2)。

第二行包含1 個整數N(1 ≤ N ≤ 100000)。表示有N 顆導彈。
接下來N 行,每行兩個整數x、y,中間用一個空格隔開,表示一顆導彈的坐標(x, y)。不同導彈的坐標可能相同。
所有坐標分量的絕對值都不超過1000。

輸出格式

只有一行,包含一個整數,即當天的最小使用代價。

樣例1

樣例輸入1

0 0 10 0 
2 
-3 3  
10 0 

樣例輸出1

18

樣例2

樣例輸入2

0 0 6 0 
5  
-4 -2 
-2 3    
4 0 
6 -2 
9 1

樣例輸出2

30

限制

每個測試點1s。

提示

兩個點(x1, y1)、(x2, y2)之間距離的平方是(x1? x2)2+(y1?y2)2。

兩套系統工作半徑r1、r2 的平方和,是指r1、r2 分別取平方後再求和,即r12 +r22 。
樣例1說明:
樣例1 中要攔截所有導彈,在滿足最小使用代價的前提下,兩套系統工作半徑的平方分 別為18 和0。
樣例2說明:
樣例中的導彈攔截系統和導彈所在的位置如下圖所示。要攔截所有導彈,在滿足最小使用代價的前提下,兩套系統工作半徑的平方分別為20 和10。
技術分享

導彈攔截(NOIP2010 普及組第三題)