만드는 중입니다

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

평면그래프와 게임

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

요약
평면 그래프에서 간선을 지우고, 두 정점이 같은 연결 요소에 있는지 묻는 질의에 답합니다. 질의의 정점 번호는 이전까지 A가 이긴 횟수로 보정됩니다.
난이도

어려움10점 중 8점

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

문제

A젖소와 D젖소가 평면 그래프에서 게임을 한다. 게임은 처음에 NN개의 정점과 MM개의 간선으로 이루어진 평면 그래프에서 진행된다.

게임은 주어진 수에 따라 두 가지 행동을 QQ번 진행한다.

  • 1 u v: 정점 uu와 정점 vv를 잇는 간선이 있다면 그 간선을 삭제한다.
  • 2 u v: 정점 uu와 정점 vv가 같은 컴포넌트에 속하는지 확인한다. 같은 컴포넌트에 속하면 A젖소가 이기고, 그렇지 않으면 D젖소가 이긴다.

원래는 2번 행동마다 누가 이기는지만 알아내면 되는 문제였다. 하지만 자신이 많이 이기지 못한다는 사실을 알게 된 D젖소는 화가 났다.

그래서 D젖소는 주어지는 모든 행동의 수를 다음 규칙에 따라 (u,v)(u, v)에서 (u′,v′)(u', v')으로 바꾸려고 한다.

현재 행동 이전까지 2번 행동 중 A젖소가 이긴 횟수를 aa라고 하자. 그러면

u′=(u−1+X×a) mod N+1u' = (u - 1 + X \times a) \bmod N + 1

v′=(v−1+Y×a) mod N+1v' = (v - 1 + Y \times a) \bmod N + 1

이다. 여기서 x mod yx \bmod y는 xx를 yy로 나눈 나머지이다.

이제 D젖소는 만족했다. 2번 행동을 할 때마다 누가 이기는지 알아보자!

입력

첫째 줄에는 다섯 개의 양의 정수 NN, MM, QQ, XX, YY가 주어진다. 1+i1+i번째 줄에는 ii번 정점의 좌표 xix_i와 yiy_i가 주어진다. N+1+jN+1+j번째 줄에는 jj번째 간선의 양 끝점 aja_j와 bjb_j가 주어진다. 이는 jj번째 간선이 aja_j번 정점과 bjb_j번 정점을 양 끝점으로 갖는 선분 모양의 간선임을 뜻한다. N+M+2N+M+2번째 줄부터 QQ개의 줄에 각 행동을 나타내는 세 정수가 주어진다. 실제로는 u′u', v′v'을 이용하여 행동을 처리해야 한다는 점에 유의한다.

출력

2번 행동을 할 때마다 A젖소가 이기면 A를, D젖소가 이기면 D를 한 줄에 출력한다.

제한

  • 1≤N,M,Q,X,Y≤1051 \le N, M, Q, X, Y \le 10^5
  • −109≤xi,yi≤109-10^9 \le x_i, y_i \le 10^9
  • 1≤aj,bj≤N1 \le a_j, b_j \le N
  • 모든 행동에 대해 1≤u,v≤N1 \le u, v \le N이다.
  • 2번 행동은 한 번 이상 주어진다.
  • 주어진 그래프는 평면 그래프이다. 즉, 서로 다른 두 간선은 끝점을 제외한 다른 점에서 만나지 않는다.

예제1

  1. 예제 1

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