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

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

직사각형 개수 세기

면접 대비

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

요약
가로 선분과 세로 선분으로 이루어진 도형에서 네 꼭짓점이 모두 교점인 직사각형의 개수를 센다.
난이도

보통10점 중 6점

유형
기하, 해시맵, 완전 탐색, 구현
정답자
아직 제출이 없습니다

문제

수평 선분과 수직 선분으로만 이루어진 그림이 주어진다. 이 선분들로 만들어지는 서로 다른 직사각형의 개수를 세는 것이 목표이다. 예를 들어, 아래 그림 1과 그림 2에서 직사각형의 개수는 각각 5개와 0개이다.

그림에는 여러 개의 교차점이 있다. 교차점이란 두 개 이상의 선분이 공유하는 점을 말한다. 입력으로 주어지는 선분들은, 모든 교차점이 정확히 하나의 수평 선분과 하나의 수직 선분이 만나서 생기도록 구성되어 있다.

하나의 직사각형은 서로 다른 두 개의 수평 선분과 서로 다른 두 개의 수직 선분으로 둘러싸이며, 네 꼭짓점이 모두 교차점이어야 한다.

입력

첫 번째 줄에는 테스트 케이스의 개수 MM이 주어진다 (1≤M≤101 \le M \le 10). 그 뒤로 각 테스트 케이스의 데이터가 이어진다. 각 테스트 케이스의 첫 줄에는 그림을 이루는 선분의 개수 ss가 주어진다 (1≤s≤1001 \le s \le 100). 이어지는 ss개의 줄에는 각각 한 선분의 두 끝점의 좌표를 나타내는 네 정수 x1 y1 x2 y2x_1\ y_1\ x_2\ y_2가 주어진다. 모든 좌표는 00 이상 10001000 이하의 정수이며, 모든 선분은 수평 또는 수직이다.

출력

각 테스트 케이스마다 그림에 있는 서로 다른 직사각형의 개수를 한 줄에 하나씩 출력한다.

예제1

  1. 예제 1

    입력
    2
    6
    0 0 0 20
    0 10 25 10
    20 10 20 20
    0 0 10 0
    10 0 10 20
    0 20 20 20
    3
    5 0 5 20
    15 5 15 25
    0 10 25 10
    
    예상 출력
    5
    0