網際網路程式設計全國大賽

初賽題目


題目(3) 飛彈試射
執行檔MISSILES.EXE
輸入檔MISSILES.IN
輸出檔MISSILES.OUT
執行時間限制30 秒

某國進行飛彈試射,目標區為一簡單多邊形(即多邊形的邊不會交叉)。試寫一程式,根據飛彈落點的座標位置,判斷有多少飛彈命中目標區。擊中目標區邊上的飛彈視為命中目標。
多邊形和飛彈的落點座標均為整數,且以數學直角座標表示。多邊形以 n 個頂點的座標表示。

輸入檔說明

輸入檔中可以有多個測試資料。每個測試資料的第一行是多邊形的頂點個數,接下來是多邊形頂點的 x、y 座標值。每行包含一個座標值,x 和 y 中間以至少一個空格分開。在多邊形資料的後面是飛彈的座標資料的個數,和飛彈的座標資料。和多邊形資料一樣,每行一個座標值,分別代表一個飛彈的座標。多邊形頂點個數為 0 時,表示輸入檔結束。輸入的座標值是從 -10000 到 10000 的整數。每組測試資料中,多邊形頂點個數範圍從 3 到 1000,飛彈個數最多 1000 個。

輸出檔說明

每行包含一個測試資料的結果。輸出值為命中的飛彈數。

範例

MISSILES.IN
4
0 0
0 10
10 10
10 0
3
0 0
5 5
11 11
3
1 1
2 2
1 2
1
0 0
0
MISSILES.OUT
2
0