만드는 중입니다

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

잘사는 클럽

면접 대비

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

요약
두 회원 재산의 부호 조합 합이나 차가 0보다 큰 조건들을 동시에 만족하는 재산 값이 있는지 판별합니다.
난이도

보통10점 중 5점

유형
그래프, DFS
정답자
아직 제출이 없습니다

문제

존은 예전에는 조니였지만 열심히 일한 덕분에 존경받는 Well Off 클럽의 회원이 되었다. 클럽에는 1번부터 nn번까지 번호가 붙은 nn명의 회원이 있다. ii번 회원의 재산은 xix_i이며, 음수를 포함한 임의의 수일 수 있다. 클럽 회원 자격은 평생이라서 가난해지거나 파산해도 쫓겨나지 않는다.

회원들은 재산을 비교하는 것을 즐기지만 액수를 직접 말하지는 않는다. 대신 대화를 나눠서 xix_i와 xjx_j가 xi+xj>0x_i + x_j > 0, xi−xj>0x_i - x_j > 0, −xi+xj>0-x_i + x_j > 0, −xi−xj>0-x_i - x_j > 0 중 하나를 만족하는지 알아낸다.

조니는 오늘 클럽에서 이런 부등식을 많이 들었지만, 일부 회원이 거짓말을 하고 있다고 의심한다. 그가 들은 부등식을 읽고, 모든 부등식이 동시에 참일 수 있는지, 즉 모든 부등식을 동시에 만족하는 재산 값들이 존재하는지 판별한 뒤 표준 출력에 답을 출력하는 프로그램을 작성하라.

입력

첫 줄에 공백으로 구분된 두 정수 nn과 mm이 주어진다 (1≤n≤100 0001 \le n \le 100\,000, 1≤m≤500 0001 \le m \le 500\,000). nn은 회원 수이고, mm은 회원들의 재산을 관계 짓는 부등식의 수이다.

이어지는 mm개의 줄에는 부호 + 또는 -, 정수 ii (1≤i≤n1 \le i \le n), 또 다른 부호 + 또는 -, 정수 jj (1≤j≤n1 \le j \le n)가 공백 한 칸으로 구분되어 주어진다. 이는 ±xi±xj>0\pm x_i \pm x_j > 0 부등식을 뜻하며, 각 부호는 바로 앞에 적힌 ii 또는 jj에 붙은 부호이다. i=ji = j인 경우도 있을 수 있다.

출력

출력의 유일한 줄에 단어 하나를 출력한다. 부등식들을 만족하는 재산 값이 존재하면 TAK, 그렇지 않으면 NIE를 출력한다.

힌트

예제 1에서는 x1=3x_1 = 3, x2=2x_2 = 2, x3=1x_3 = 1로 부등식을 모두 만족하므로 조건을 만족한다. 예제 2에서는 부등식을 동시에 만족하는 값이 없다.

예제2

  1. 예제 1

    입력
    3 3
    + 1 - 2
    - 3 + 1
    + 2 - 3
    
    예상 출력
    TAK
    
  2. 예제 2

    입력
    3 3
    + 1 - 2
    + 3 - 1
    + 2 - 3
    
    예상 출력
    NIE