말 그림

시간 제한2초메모리 제한512 MB

요약
축에 평행한 선분들과 점 T가 주어질 때 T를 지나는 선분과 연결된 선분을 모두 남기고, 그린 점을 '#'로 표시한 최소 크기 격자를 출력한다.
난이도

보통10점 중 6점

유형
그래프, BFS, 유니온 파인드, 기하
정답자
아직 제출이 없습니다

문제

Domagoj는 여가 시간에 말 그리기를 좋아한다. 오랫동안 그는 이 주제를 다루는 소셜 그룹의 자랑스러운 구성원이었다. 하지만 Domagoj는 매우 특별한 소년이어서, 그의 그리기 기법 때문에 대부분의 사람들은 그의 걸작을 이해하지 못한다.

그의 가장 유명한 그림 중 하나는 "#define HORSE 42-42", 일명 "평범한 말"이다.

15
2 2 6 2
2 2 2 6
6 2 6 4
6 4 6 6
2 6 6 6
6 2 8 2
8 2 10 2
10 2 12 2
12 2 12 4
12 4 6 4
6 2 6 1
8 2 8 0
10 2 10 1
12 2 12 0
42 42 42 43
2 2

"저 말은 어디에 있지?" 그리고 "Domagoj는 괜찮은 걸까?"라고 궁금해할 것이다. 그림에는 숫자만 보이기 때문이다. 첫 번째 질문에 대한 답은 다음 절에서 나오고, 두 번째 질문의 답도 이 문제의 출제자에게 흥미롭다.

그림을 이해하려면 Domagoj의 그리기 기법을 이해해야 한다. 그림의 첫 번째 숫자는 그려졌을 수 있는 선분의 개수를 나타내는 N이다. 그다음 N개의 줄에는 네 개의 숫자 Ai, Bi, Ci, Di가 있는데, 이는 점 (Ai, Bi)에서 점 (Ci, Di)까지 이어지는 i번째 선분을 나타낸다. 그림의 마지막 줄에는 두 숫자 X와 Y, 즉 점 T의 좌표가 있다. Domagoj는 점 T를 포함하는 모든 선분과, 점 T를 포함하는 선분에 직간접적으로 연결된 모든 선분을 그린다. 두 선분 L1과 L2가 직접 연결되었다는 것은 공통 끝점을 가진다는 뜻이고, 간접 연결되었다는 것은 선분 L1과 H1이 직접 연결되고, H1과 H2가 직접 연결되고, ..., Hk와 L2가 직접 연결되는 선분의 나열 L1, H1, H2, … Hk, L2가 존재한다는 뜻이다.

여러분의 과제는 Domagoj의 그림을 표시하는 문자 직사각형 행렬 P를 출력하는 것이다. Pa,b의 값은 좌표 (a, b)인 점이 그려진 어떤 선분의 일부이면 '#', 아니면 '.'이어야 한다. 행렬에서 좌표 a는 왼쪽에서 오른쪽으로 증가하고, 좌표 b는 아래에서 위로 증가한다. 행렬 P는 그려진 선의 일부인 모든 점을 포함해야 하며, '.' 문자만 포함하는 행이나 열이 하나도 없어야 한다. 즉, 크기가 최소여야 한다.

입력

입력의 첫 줄에는 양의 정수 N (1 ≤ N ≤ 200 000)이 있다.

다음 N개의 줄에는 네 개의 음이 아닌 정수 Ai, Bi, Ci, Di (0 ≤ Ai, Bi, Ci, Di ≤ 300)가 있다. 각 선분에 대해 Ai ≠ Ci이거나 Bi ≠ Di이다. 두 선분은 교차하지 않지만, 일부는 공통 끝점을 가질 수 있다. 모두 좌표축에 평행하다.

입력의 마지막 줄에는 두 개의 음이 아닌 정수 X와 Y, 즉 점 T의 좌표가 있다. 점 T는 주어진 선분 중 적어도 하나의 일부이다.

출력

문제에서 요구하는 행렬 P를 출력한다.

예제2

  1. 예제 1

    입력
    15
    2 2 6 2
    2 2 2 6
    6 2 6 4
    6 4 6 6
    2 6 6 6
    6 2 8 2
    8 2 10 2
    10 2 12 2
    12 2 12 4
    12 4 6 4
    6 2 6 1
    8 2 8 0
    10 2 10 1
    12 2 12 0
    42 42 42 43
    2 2
    
    예상 출력
    #####......
    #...#......
    #...#######
    #...#.....#
    ###########
    ....#.#.#.#
    ......#...#
    
  2. 예제 2

    입력
    6
    1 1 10 1
    10 1 10 3
    10 3 1 3
    1 3 1 1
    10 3 11 3
    11 3 11 6
    2 1
    
    예상 출력
    ..........#
    ..........#
    ..........#
    ###########
    #........#.
    ##########.