아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Shooter Island

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

요약
50 × 100000 격자에서 직사각형이 침수될 때마다, 반지름 0.31416인 배가 남은 물 위에서 두 칸 사이를 지날 수 있는지 판정한다.
난이도

어려움10점 중 8점

유형
유니온 파인드, 구간, 기하, 구현
정답자
아직 제출이 없습니다

문제

최근 대위로 진급했고, 부하들은 폭풍 속에서 특수 임무를 수행하고 있다. 전장은 다소 특이한데, 북극권 위 거대한 유빙 위에 있다. 당신은 본부에서 작전을 지휘한다. 고성능 컴퓨터 여러 대가 전장의 상황을 실시간으로 알려 주며, AI 인터페이스는 전장을 단위 정사각형들의 격자로 모델링한다. 각 단위 정사각형은 격자에서의 행과 열 번호로 식별된다. 단위 정사각형들로 이루어진 더 큰 직사각형은 서로 반대쪽 모서리에 있는 두 단위 정사각형의 쌍으로 나타낸다. 처음에는 모든 칸이 얼음으로 덮여 있다.

컴퓨터에서 받는 정보는 두 가지 종류가 있다.

  1. 명중 정보: 적이 단위 정사각형 [x1,y1]과 [x2,y2]로 나타내는 직사각형을 명중시켰다. 그러면 그 직사각형은 곧바로 차가운 북극 바닷물로 범람한다.
  2. 부하들의 질의: 부하들은 배를 타고 [x1,y1]에서 [x2,y2]로 갈 수 있는지 묻는다. 배는 반지름이 0.31416인 원으로 나타낼 수 있다. 배는 항상 물 위에 완전히 있어야 하고, 전장 영역을 벗어날 수 없다.

부하들에게 도움이 필요하다! 이들을 안정적으로 이끌 수 있겠는가?

입력

첫째 줄에는 정수 L (1 ≤ L ≤ 2 · 105)이 주어지며, 이는 뒤따르는 줄의 수이다. 다음 L개 줄 각각에는 다섯 개의 정수 t, x1, y1, x2, y2 (t ∈ {0, 1}, 1 ≤ x1, x2 ≤ 50, 1 ≤ y1, y2 ≤ 105)가 주어진다. t는 정보의 종류를 나타내고, [x1, y1]과 [x2, y2]는 각각의 단위 정사각형을 지정한다.

출력

각 질의마다 단위 정사각형 [x1,y1]에서 단위 정사각형 [x2,y2]로 항해할 수 있으면 1을, 그렇지 않으면 0을 출력한다.

예제2

  1. 예제 1

    입력
    6
    0 4 4 6 6
    0 6 6 7 8
    0 1 3 3 3
    1 1 7 6 1
    1 5 4 6 8
    1 4 5 1 3
    
    예상 출력
    0
    1
    0
    
  2. 예제 2

    입력
    3
    0 1 1 1 1
    0 1 2 1 2
    1 1 1 1 2
    
    예상 출력
    1