C-조류

아직 제출이 없습니다시간 제한3초메모리 제한128 MB

문제

C-조류(C-algae) 는 비테오시아 사람들이 가장 좋아하는 전통 요리이다. C-조류는 다음과 같이 재귀적으로 정의되는 매우 독특한 구조를 가진다.

  • 세포 하나로 이루어진 조류는 C-조류이다.
  • 두 C-조류 K1K_1K2K_2 는 다음 두 가지 방법 중 정확히 한 가지로 합쳐져 새로운 C-조류 KK 가 된다.
    1. 분리 합집합K1K_1K2K_2 의 모든 세포와 모든 연결을 그대로 가져온다.

    2. 조인(join)K1K_1K2K_2 의 모든 세포와 모든 연결을 가져온 뒤, 추가로 K1K_1 의 모든 세포를 K2K_2 의 모든 세포와 각각 연결한다.

최근 적대국 비토시아가 진짜 C-조류와 구별하기 매우 어려울 만큼 비슷한 가짜 조류를 팔기 시작했다. 이에 비테오시아 정부는 주어진 조류가 실제로 C-조류인지 검증하는 프로그램을 요청하였다.

여러 조류의 정보를 표준 입력에서 읽어, 각각이 올바른 C-조류인지 판별하여 표준 출력에 답을 출력하는 프로그램을 작성하라. 모든 연결은 방향이 없다.

입력

첫째 줄에 검사할 조류의 개수 kk (1k101 \le k \le 10) 가 주어진다. 이어서 kk 개 조류의 정보가 주어진다.

각 조류의 정보는 먼저 세포의 수 nn 과 연결의 수 mm (1n100001 \le n \le 10\,000, 0m1000000 \le m \le 100\,000) 이 공백으로 구분되어 한 줄에 주어진다. 세포는 11 번부터 nn 번까지 번호가 매겨져 있다. 이어지는 mm 개의 줄에는 각각 두 정수 aa, bb (aba \ne b, 1a,bn1 \le a, b \le n) 가 주어지며, 이는 세포 aa 와 세포 bb 가 방향 없이 연결되어 있음을 뜻한다. 각 연결은 정확히 한 번만 주어진다.

출력

kk 개의 줄을 출력한다. ii 번째 줄에는 다음을 출력한다.

  • ii 번째 조류가 올바른 C-조류이면 TAK,
  • 그렇지 않으면 NIE.