만드는 중입니다

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

변수 할당

면접 대비

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

요약
변수 사이의 등식 M개가 순서대로 주어질 때, 각 등식이 새로운 정보인지, 이미 성립하는지, 모순인지 표시합니다. 모순이 처음 나오면 거기서 멈춥니다.
난이도

보통10점 중 4점

유형
유니온 파인드
정답자
아직 제출이 없습니다

문제

변수 x1,x2,…,xNx_1, x_2, \ldots, x_N이 주어진다. 수학 선생님이 복수를 하려고 하여, 겨울방학 동안 풀어야 할 지루한 수학 문제 목록을 준다.

MM개의 제약 조건이 순서대로 주어진다. 각 제약 조건은 xi=xjx_i = x_j 또는 xi=−xjx_i = -x_j 형태의 등식이다. 제약 조건은 이행성을 가진다. 즉 xi=xjx_i = x_j이고 xj=xkx_j = x_k이면, 직접 주어지지 않았더라도 xi=xkx_i = x_k가 성립한다.

각 제약 조건에 다음 글자 중 하나를 순서대로 표시한다.

  • N: 새로운 제약 조건이다. xix_i와 xjx_j는 직접으로도 간접으로도 아무 관계가 없다.
  • E: 기존 제약 조건이다. 새로운 정보를 더하지 않는다(직접 또는 간접으로 이미 성립한다).
  • C: 모순되는 제약 조건이다. 이전 제약 조건들과 함께 성립할 수 없다. 모순이 생기면 문제는 끝나며, 나머지 제약 조건은 표시하지 않는다.

xi=xix_i = x_i는 항상 기존 제약 조건이다. xi=−xix_i = -x_i는 항상 모순되는 제약 조건이다.

입력

첫 줄에 공백으로 구분된 두 정수 NN과 MM이 주어진다(1≤N≤1061 \le N \le 10^6, 1≤M≤1061 \le M \le 10^6). NN은 변수의 개수이다.

이어지는 MM개의 줄에는 공백으로 구분된 두 정수 II와 JJ가 주어진다. I∈[1,N]I \in [1, N]이고 J∈[−N,−1]∪[1,N]J \in [-N, -1] \cup [1, N]이다. J>0J > 0이면 제약 조건은 xI=xJx_I = x_J이고, J<0J < 0이면 제약 조건은 xI=−x∣J∣x_I = -x_{|J|}이다. 모든 입력에서 I<∣J∣I < |J|라고 가정해도 되지만, 풀이에 필요한 조건은 아니다.

출력

KK개의 줄을 출력한다. 각 줄에는 N, E, C 중 하나를 출력하여 ii번째 제약 조건을 표시한다. 1≤K≤N1 \le K \le N이며, KK의 값은 모순이 발생하는지에 따라 달라진다.

예제2

  1. 예제 1

    입력
    4 7
    1 2
    3 -4
    1 -4
    1 3
    2 -4
    2 -3
    1 -4
    
    예상 출력
    N
    N
    N
    E
    E
    C
    
  2. 예제 2

    입력
    4 9
    1 1
    2 2
    2 3
    1 3
    1 2
    1 3
    3 4
    1 4
    2 4
    
    예상 출력
    E
    E
    N
    N
    E
    E
    N
    E
    E