겹쳐진 창

면접 대비

시간 제한1초메모리 제한128 MB

요약
열린 순서대로 주어진 창들에 대해 각 클릭 지점을 덮는 가장 최근에 열린 창을 찾고, 덮는 창이 없으면 background를 출력한다.
난이도

쉬움10점 중 3점

유형
배열, 완전 탐색, 구현, 시뮬레이션
정답자
아직 제출이 없습니다

문제

엠마는 컴퓨터 바탕화면을 깔끔하게 관리하지 않는다. 창을 계속 열기만 하고 그 창을 띄운 프로그램을 닫지 않는 습관이 있어서, 바탕화면은 어떤 창은 다른 창 뒤에서 일부만 보이고 어떤 창은 완전히 가려진, 매우 어수선한 상태가 된다. 게다가 며칠씩 컴퓨터를 켜 두기 때문에 이 난장판은 걷잡을 수 없이 커진다. 엠마가 화면의 특정 위치를 클릭했을 때 어떤 창이 (있다면) 선택되는지 알아내는 것이 당신의 과제다.

클릭했을 때 선택되는 창은 그 지점을 덮고 있는 가장 위에 있는 창, 즉 그 지점을 포함하는 창들 중 가장 나중에 열린 창이다. 창을 클릭해도 그 창이 맨 앞으로 올라오지는 않는다.

화면 해상도는 106×10610^6 \times 10^6 픽셀이다. 바탕화면 왼쪽 위 모서리 픽셀의 위치가 (0,0)(0, 0)이므로, 오른쪽 아래 픽셀의 위치는 (999999,999999)(999999, 999999)이다. 행은 위에서 아래로, 열은 왼쪽에서 오른쪽으로 번호를 매긴다. 각 창은 왼쪽 위 픽셀의 위치 (r,c)(r, c)와 너비 ww, 높이 hh로 주어지며, 행 rr부터 r+h−1r + h - 1까지, 열 cc부터 c+w−1c + w - 1까지의 픽셀을 정확히 덮는다.

입력

입력은 여러 개의 바탕화면 설명으로 이루어진다.

각 설명은 창의 개수인 양의 정수 nn (n≤100n \le 100)이 적힌 줄로 시작하고, 이어서 엠마가 창을 연 순서대로 nn개의 창을 나타내는 nn개의 줄이 온다. 각 창의 줄에는 네 정수 rr, cc, ww, hh가 있다. (r,c)(r, c)는 창의 왼쪽 위 픽셀의 행과 열이고 (0≤r,c≤9999990 \le r, c \le 999999), ww와 hh는 각각 창의 너비와 높이(픽셀 단위)이다 (w,h≥1w, h \ge 1). 모든 창은 바탕화면 안에 완전히 들어가므로 잘리는 창은 없다.

창을 나타내는 줄들 다음에는 질의의 개수인 양의 정수 mm이 적힌 줄이 오고, 이어서 mm개의 줄이 온다. 각 질의 줄에는 두 정수 crcr과 cccc가 있으며, 이는 클릭한 위치의 행과 열이다(항상 바탕화면 안에 있다).

입력의 끝은 창의 개수 nn 자리에 00 하나만 있는 줄로 표시된다.

출력

각 바탕화면 설명에 대해, 주어진 순서대로 먼저 Desktop k: 줄을 출력한다. 여기서 kk는 11부터 시작하는 바탕화면 번호이다. 그다음 각 질의에 대해 순서대로 한 줄씩, 모두 mm개의 줄을 출력한다. 클릭이 kk번 창을 선택하면 window k를, 아무 창도 선택하지 못하면 background를 출력한다. 창은 엠마가 연 순서대로 1,2,…,n1, 2, \ldots, n번으로 번호가 매겨진다. 질의를 해도 맨 앞에 있는 창이 바뀌지 않는다는 점에 유의하라.

예제1

  1. 예제 1

    입력
    3
    1 2 3 3
    2 3 2 2
    3 4 2 2
    4
    3 5
    1 2
    4 2
    3 3
    2
    5 10 2 10
    100 100 100 100
    2
    5 13
    100 101
    0
    
    예상 출력
    Desktop 1:
    window 3
    window 1
    background
    window 2
    Desktop 2:
    background
    window 2