만드는 중입니다

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

지휘자

면접 대비

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

요약
원형으로 선 학생들의 자리를 한 번 바꿀 때마다, 한 쌍의 이웃을 끊어서 번호가 정렬된 줄을 만들 수 있는지 판단합니다.
난이도

보통10점 중 5점

유형
배열, 구현
정답자
아직 제출이 없습니다

문제

겨울 정보학교는 전통 춤으로 마무리된다. 참가하는 학생은 nn명이고, 각 학생에게는 11부터 nn까지의 서로 다른 번호가 붙어 있다.

먼저 지휘자 크레시오가 학생들에게 원 모양으로 서서 각 학생이 양옆의 다른 두 학생과 손을 잡으라고 지시한다.

알렌카는 이웃한 학생 한 쌍만 손을 놓도록 해서 원을 끊었을 때, 새로 생긴 학생들의 줄이 번호순으로 정렬되어 있는지 궁금해한다. 예를 들어 학생들의 순서가 3 4 1 2이면 번호 4인 학생과 번호 1인 학생 사이에서 원을 끊을 수 있다. 순서가 2 1 4 3이면 이런 방식으로는 원을 끊을 방법이 없다.

밤사이 크레시오는 qq개의 지시를 내린다. 각 지시에서는 두 학생이 자리를 맞바꾼다. 맞바꿀 때마다 알렌카의 질문에 답해야 한다.

입력

첫 줄에 학생 수와 맞바꾸기 횟수인 두 정수 nn과 qq(1≤n,q≤3000001 ≤ n, q ≤ 300000)가 주어진다.

둘째 줄에는 원에서 학생들이 처음 놓인 순서를 나타내는 nn개의 정수 aia_i(1≤ai≤n1 ≤ a_i ≤ n)가 주어진다.

이어지는 qq개의 줄에는 각각 두 정수 xix_i, yiy_i(1≤xi,yi≤n1 ≤ x_i, y_i ≤ n, xi≠yix_i ≠ y_i)가 주어진다. 이는 크레시오의 ii번째 지시로, 번호가 xix_i인 학생과 yiy_i인 학생이 자리를 맞바꾼다.

출력

ii번째 줄에는 처음 ii번 맞바꾼 뒤의 답을 출력한다. 답이 가능하면 DA, 그렇지 않으면 NE를 출력한다.

힌트

두 번째 예제에 대한 설명이다. 처음 상태, 첫 번째 맞바꾼 후, 두 번째 맞바꾼 후의 학생 배치이다.

예제3

  1. 예제 1

    입력
    5 2
    2 3 4 5 1
    1 3
    3 1
    
    예상 출력
    NE
    DA
    
  2. 예제 2

    입력
    4 2
    2 3 1 4
    4 2
    3 4
    
    예상 출력
    NE
    DA
    
  3. 예제 3

    입력
    6 5
    2 1 5 6 3 4
    3 1
    3 4
    3 2
    4 5
    5 4
    
    예상 출력
    NE
    NE
    DA
    NE
    DA