Login with GitHub. Nope?
修正 C++ 的程式碼在使用一定量動態記憶體後會產生 RF 的問題 @ 2019/12/6 4:45pm NeoHOJ 強勢復活中 (Open beta)
Submit  Ranklist

Problem : 160 - 紅色警戒區

Special Judge

Problem Statistics

Solved Member: 19  Submission: 127  User Tried: 21

Statement:

根據消息,恐怖份子丁丁計畫在開學的時候埋炸彈炸掉丁丁大學,以示他被二一的不滿。炸彈將對學校與學生造成極大的傷害,所以很有正義感的你打算終止丁丁的逆襲,以獲得小波的芳心。

有趣的是你透過迪西的調查,我們能夠清楚的知道炸彈的位置和影響範圍,我們將此範圍稱之為「紅色警戒區」。紅色警戒區是一個以炸彈為中心的圓形區域,給定有N個炸彈,每個炸彈圓心在(Xi, Yi),他的紅色警戒區半徑為Ri。

嫌麻煩的你並不打算拆除炸彈,你決定在在所有紅色警戒區的邊界圍上封鎖線,為了購買適當的材料,你必須先算這些封鎖線的總長度。紅色警戒區有可能互相重疊,形成不是圓形的範圍。也可能有數個獨立的安全區域,被紅色警戒包圍住,但是卻不會被炸彈波及到。

Input:Output:

第一行是數字T,代表接下來有T組測試資料。
對於每組測試資料有個數字N ( 1 <= N <= 100),接下來有N行三個數字Xi, Yi, Ri,代表第i顆炸彈的圓心在(Xi, Yi),與他的半徑Ri。
對於每組測試資料輸出兩個數字,由一個空格隔開。第一個數字a是一個實數, 0 < a < 10 。第二個數字是一個非負整數。而封鎖線的總長度為用科學符號表示的a×10^b。注意,a需印出小數後兩位。
(a的誤差範圍必須在0.05以內)

Sample Input:Sample Output:

3
3
3 1 2
4 5 2
4 2 2
4
2 1 1
1 3 1
4 2 3
0 4 3
4
0 0 1
2 0 1
0 2 1
2 2 1
2.22 1
2.90 1
2.51 1

HINT:

在你帥氣的完成任務後,你發現你心愛的小波已經跟迪西偷偷遠走高飛了 (拍拍

Problem Setter

Testdata:

TestTimeMemoryScore
01000ms65536kb
1-110000ms65536kb10
1-210000ms65536kb
1-310000ms65536kb
2-110000ms65536kb10
2-210000ms65536kb
2-310000ms65536kb
3-110000ms65536kb10
3-210000ms65536kb
3-310000ms65536kb
4-110000ms65536kb10
4-210000ms65536kb
4-310000ms65536kb
5-110000ms65536kb10
5-210000ms65536kb
5-310000ms65536kb
6-110000ms65536kb10
6-210000ms65536kb
6-310000ms65536kb
7-110000ms65536kb10
7-210000ms65536kb
7-310000ms65536kb
8-110000ms65536kb10
8-210000ms65536kb
8-310000ms65536kb
9-110000ms65536kb10
9-210000ms65536kb
9-310000ms65536kb
10-112000ms65536kb10
10-212000ms65536kb
10-312000ms65536kb
10-412000ms65536kb