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

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

성벽 위의 갈고리

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

요약
파란색과 빨간색 갈고리의 위치가 주어질 때, 교차 조건을 만족하는 파란색-빨간색 쌍의 개수를 센다.
난이도

보통10점 중 6점

유형
정렬, 누적 합, 배열
정답자
아직 제출이 없습니다

문제

중세 시대에 기사들은 수많은 소작농으로 이루어진 군대를 이끌었다. 성을 공격할 때 소작농들은 성벽 앞에 한 줄로 늘어서서 갈고리를 벽 너머로 던진다. 갈고리를 똑바로 던지지 못하면 두 갈고리가 서로 교차할 수 있고, 그러면 그 두 소작농은 벽을 오를 수 없게 된다. 그래서 잘 훈련된 소작농의 갈고리는 서로 교차하지 않는다.

최근 아서 경과 클레어 부인의 결혼(ACM)으로 두 소작농 군대를 합치게 되었다. 아서 경의 소작농은 파란색, 클레어 부인의 소작농은 빨간색 옷을 입는다. 함께 훈련할 때 두 군대는 성벽 앞에서 뒤섞이고, 명령이 떨어지면 모두 갈고리를 던진다. 훈련 덕분에 같은 색 갈고리끼리는 절대 교차하지 않지만, 파란색 갈고리와 빨간색 갈고리는 교차할 수 있다.

두 군대가 얼마나 잘 섞였는지 재기 위해, 갈고리가 교차하는 서로 다른 색 소작농 쌍(파란색–빨간색)이 몇 개인지 세어라.

파란색 소작농은 nn명, 빨간색 소작농은 mm명이다. 소작농이 서 있는 줄의 위치는 11부터 n+mn + m까지 번호가 매겨지고, 성벽의 위치도 11부터 n+mn + m까지 번호가 매겨진다. 벽의 위치 ii는 줄의 위치 ii의 바로 맞은편이다. 줄의 위치 ii에서 벽의 위치 jj로 던진 갈고리는, 위치 kk에서 ll로 던진 갈고리와 다음 조건을 만족할 때 교차한다.

(i<k 이고 j≥l)또는(i>k 이고 j≤l).(i < k \text{ 이고 } j \ge l) \quad\text{또는}\quad (i > k \text{ 이고 } j \le l).

어떤 두 소작농도 줄에서 같은 위치에 서지 않으며, 같은 색 갈고리끼리는 절대 교차하지 않는다. 서로 다른 색 갈고리 두 개는 같은 벽 위치로 던져질 수 있으며, 이 경우에도 교차하는 것으로 본다.

입력

첫 번째 줄에는 시나리오의 수가 주어진다.

각 시나리오는 두 정수 nn과 mm이 주어지는 줄로 시작한다. 각각 파란색 소작농과 빨간색 소작농의 수이다 (1≤n,m≤300001 \le n, m \le 30000).

이어서 파란색 소작농을 나타내는 nn개의 줄, 그다음 빨간색 소작농을 나타내는 mm개의 줄이 주어진다. 각 줄에는 두 정수 ii와 jj가 주어진다 (1≤i,j≤n+m1 \le i, j \le n + m). 해당 소작농은 줄의 위치 ii에 서 있으며 벽의 위치 jj로 갈고리를 던졌다.

출력

각 시나리오마다 Scenario #i: 형식의 줄을 출력한다. 여기서 i는 11부터 시작하는 시나리오 번호이다. 이어서 갈고리가 교차하는 서로 다른 색 소작농 쌍의 개수를 한 줄에 출력한다. 연속한 두 시나리오 사이에는 빈 줄을 하나 출력한다.

예제6

  1. 예제 1

    입력
    2
    2 2
    1 2
    3 4
    2 1
    4 3
    2 3
    1 3
    2 5
    5 3
    3 1
    4 2
    
    예상 출력
    Scenario #1:
    2
    
    Scenario #2:
    6
    
  2. 예제 2

    입력
    1
    1 1
    1 1
    2 2
    
    예상 출력
    Scenario #1:
    0
    
  3. 예제 3

    입력
    1
    1 1
    1 2
    2 1
    
    예상 출력
    Scenario #1:
    1
    
  4. 예제 4

    입력
    1
    1 1
    1 2
    2 2
    
    예상 출력
    Scenario #1:
    1
    
  5. 예제 5

    입력
    1
    3 3
    1 4
    3 5
    5 6
    2 1
    4 2
    6 3
    
    예상 출력
    Scenario #1:
    6
    
  6. 예제 6

    입력
    3
    1 1
    1 2
    2 1
    1 1
    1 1
    2 2
    2 2
    1 2
    3 4
    2 1
    4 3
    
    예상 출력
    Scenario #1:
    1
    
    Scenario #2:
    0
    
    Scenario #3:
    2