【問題N04】:描繪輪廓 [回前頁]
寫一程式描繪出一個城市的輪廓。說明如下:
假設一城市內所有的建築物都是矩形,並且都蓋在同一塊平地上。每一棟建築物,從側面來看這個城市便形成一個二度空間。
如上圖可用三個數字來描述:
L H R
其中 L, R 表示該建築物最左邊及最右邊的座標,H表示該建築物的高度。
當然,一個城市裡面是不止一棟建築的。如:
它們的輪廓則可由外框的折點描述出來:
如上圖可表示成
X1 H1 X2 H2 X3 H3 X4 H4 X5 H5 X6 H6
而其實為了節省記憶空間,我們可以只記錄偶數點,就可以描繪出一樣的輪廓,如下:
X2 H2 X4 H4 X6 H6
假設給定:
1 11 5
2 6 7
3 13 9
12 7 16
14 3 25
19 18 22
23 13 29
24 4 28
則此城市的建築形如下圖。
如上述的建築輪廓如下圖
則表示成:
1 11 3 13 9 0 12 7 16 3 19 18 22 3 23 13 29 0
輸入檔說明
輸入檔有多組測試資料。每組測試資料有N行,每行有三個正整數,表示某一棟建築物的L H R 三個值(不大於10000),以一個空白格開。每組測試資料的最後一行可能為 -1或是0。若為 –1 ,則表示還有下一組測試資料;若為0,則輸入檔結束。
輸出檔說明
對於每組測試資料輸出一行結果,數字以空白分隔,格式如題目所示。
範例輸入
1 11 5
2 6 7
3 13 9
-1
1 11 5
2 6 7
3 13 9
12 7 16
14 3 25
19 18 22
23 13 29
24 4 28
0
範例輸出
1 11 3 13 9 0
1 11 3 13 9 0 12 7 16 3 19 18 22 3 23 13 29 0