만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

H 모양 도형

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

요약
주어진 선분 중 두 개를 골라 a와 b로 정하는 방법의 수를 셉니다. P는 a의 내부에, Q는 b의 내부에 있어야 하며 a와 b는 서로 만나지 않아야 합니다.
난이도

보통10점 중 7점

유형
기하, 정렬, 수학
정답자
아직 제출이 없습니다

문제

작년 'K 모양 도형' 문제가 큰 성공을 거둬서, 올해는 새로운 'H 모양 도형' 문제를 준비했습니다. 앞으로 24년 동안의 계획도 몇 가지 있습니다.

평면 위의 세 선분 PQPQ, aa, bb가 다음 조건을 모두 만족하면 H 모양 도형이라고 합니다:

  • 점 PP는 선분 aa의 양 끝점을 제외한 내부에 있고, 선분 PQPQ와 aa는 한 직선 위에 있지 않다.
  • 점 QQ는 선분 bb의 양 끝점을 제외한 내부에 있고, 선분 PQPQ와 bb는 한 직선 위에 있지 않다.
  • 선분 aa와 bb는 공통점이 없다.
유효한 H 모양 도형유효하지 않은 H 모양 도형

점 PP, QQ의 좌표와 aa, bb의 후보가 되는 선분 nn개가 주어집니다. 주어진 선분 중에는 서로 겹치는 것이 있을 수 있지만, 이들은 서로 다른 선분으로 취급합니다.

주어진 nn개의 선분 중에서 하나를 aa로, 다른 하나를 bb로 골라 주어진 선분 PQPQ와 함께 H 모양 도형을 만드는 방법의 수를 구하세요.

입력

첫 줄에 테스트 케이스의 개수 tt (1≤t≤1051 \le t \le 10^5)가 주어집니다. 이어서 각 테스트 케이스가 주어집니다.

각 테스트 케이스의 첫 줄에는 점 PP와 QQ의 좌표를 나타내는 정수 네 개 xPx_P, yPy_P, xQx_Q, yQy_Q가 주어집니다 (−109≤xP,yP,xQ,yQ≤109-10^9 \le x_P, y_P, x_Q, y_Q \le 10^9). 점 PP와 QQ는 서로 다릅니다.

둘째 줄에는 후보 선분의 개수 nn이 주어집니다 (2≤n≤2⋅1052 \le n \le 2 \cdot 10^5).

이어지는 nn개의 줄 중 ii번째 줄에는 ii번째 선분의 양 끝점 좌표를 나타내는 정수 네 개 xi,1x_{i,1}, yi,1y_{i,1}, xi,2x_{i,2}, yi,2y_{i,2}가 주어집니다 (−109≤xi,1,yi,1,xi,2,yi,2≤109-10^9 \le x_{i,1}, y_{i,1}, x_{i,2}, y_{i,2} \le 10^9). 모든 선분의 길이는 양수입니다.

모든 테스트 케이스에 걸친 nn의 합은 2⋅1052 \cdot 10^5을 넘지 않습니다.

출력

각 테스트 케이스마다, 주어진 선분 PQPQ와 후보 선분 중 두 개를 사용해 H 모양 도형을 만드는 방법의 수를 출력하세요.

예제1

  1. 예제 1

    입력
    1
    0 0 4 0
    8
    0 0 2 1
    -1 -1 2 2
    3 3 5 -3
    0 2 6 -1
    2 -2 5 1
    -1 1 3 -3
    -1 0 2 0
    -1 -1 2 2
    
    예상 출력
    6