CCF模擬題 視窗

2022-03-05 19:16:24 字數 1501 閱讀 3143

視窗

時間限制:

1.0s

記憶體限制:

256.0mb

問題描述

在某圖形作業系統中,有 n 個視窗,每個視窗都是乙個兩邊與座標軸分別平行的矩形區域。視窗的邊界上的點也屬於該視窗。視窗之間有層次的區別,在多於乙個視窗重疊的區域裡,只會顯示位於頂層的視窗裡的內容。

當你點選螢幕上乙個點的時候,你就選擇了處於被點選位置的最頂層視窗,並且這個視窗就會被移到所有視窗的最頂層,而剩餘的視窗的層次順序不變。如果你點選的位置不屬於任何視窗,則系統會忽略你這次點選。

現在我們希望你寫乙個程式模擬點選視窗的過程。

輸入格式

輸入的第一行有兩個正整數,即 n 和 m。(1 ≤ n ≤ 10,1 ≤ m ≤ 10)

接下來 n 行按照從最下層到最頂層的順序給出 n 個視窗的位置。 每行包含四個非負整數 x1, y1, x2, y2,表示該視窗的一對頂點座標分別為 (x1, y1) 和 (x2, y2)。保證 x1

< x2,y1 2。

接下來 m 行每行包含兩個非負整數 x, y,表示一次滑鼠點選的座標。

題目中涉及到的所有點和矩形的頂點的 x, y 座標分別不超過 2559 和  1439。

輸出格式

輸出包括 m 行,每一行表示一次滑鼠點選的結果。如果該次滑鼠點選選擇了乙個視窗,則輸出這個視窗的編號(視窗按照輸入中的順序從 1 編號到 n);如果沒有,則輸出"ignored"(不含雙引號)。

樣例輸入

3 40 0 4 4

1 1 5 5

2 2 6 6

1 10 0

4 40 5

樣例輸出21

1ignored

樣例說明

第一次點選的位置同時屬於第 1 和第 2 個視窗,但是由於第 2 個視窗在上面,它被選擇並且被置於頂層。

第二次點選的位置只屬於第 1 個視窗,因此該次點選選擇了此視窗並將其置於頂層。現在的三個視窗的層次關係與初始狀態恰好相反了。

第三次點選的位置同時屬於三個視窗的範圍,但是由於現在第 1 個視窗處於頂層,它被選擇。

最後點選的 (0, 5) 不屬於任何視窗。

解題:模擬搞。。

1 #include 2

using

namespace

std;

3struct

rect

8 }r[20];9

intn,m;

10int

main()

17for(int i = 0; i < m; ++i)

23if(idx == -1) puts("

ignored");

24else30}

31}32return0;

33 }

view code

ccf賣菜模擬題

關於ccf中的python模擬題 1.賣菜題目 問題描述 在一條街上有n個賣菜的商店,按1至n的順序排成一排,這些商店都賣一種蔬菜。第一天,每個商店都自己定了乙個 店主們希望自己的菜價和其他商店的一致,第二天,每一家商店都會根據他自己和相鄰商店的 調整自己的 具體的,每家商店都會將第二天的菜價設定為...

CCF買菜模擬題

問題描述 小h和小w來到了一條街上,兩人分開買菜,他們買菜的過程可以描述為,去店裡買一些菜然後去旁邊的乙個廣場把菜裝上車,兩人都要買n種菜,所以也都要裝n次車。具體的,對於小h來說有n個不相交的時間段 a1,b1 a2,b2 an,bn 在裝車,對於小w來說有n個不相交的時間段 c1,d1 c2,d...

CCF真題之視窗

201403 2 問題描述 在某圖形作業系統中,有 n 個視窗,每個視窗都是乙個兩邊與座標軸分別平行的矩形區域。視窗的邊界上的點也屬於該視窗。視窗之間有層次的區別,在多於乙個視窗重疊的區域裡,只會顯示位於頂層的視窗裡的內容。當你點選螢幕上乙個點的時候,你就選擇了處於被點選位置的最頂層視窗,並且這個視...