아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

즐거운 색칠

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

요약
크기가 3 이하인 부분집합들이 주어질 때, 모든 부분집합이 단색이 아니게 되는 2색 칠이 존재하는지 판정한다.
난이도

보통10점 중 7점

유형
백트래킹, 게임 이론, 그래프, 완전 탐색
정답자
아직 제출이 없습니다

문제

'즐거운 색칠' 문제는 다음과 같이 정의된다.

유한 집합 UU와, 각 크기가 3 이하인 부분집합 S1,S2,…,Sm⊆US_1, S_2, \dots, S_m \subseteq U (즉 ∣Si∣≤3\left| S_i \right| \le 3)가 주어진다.

UU의 각 원소를 두 색 {RED,BLUE}\{ \mathrm{RED}, \mathrm{BLUE} \} 중 하나로 칠하는 함수 f:U↦{RED,BLUE}f : U \mapsto \{ \mathrm{RED}, \mathrm{BLUE} \} 를 생각하자. 모든 ii에 대해 집합 SiS_i의 원소가 전부 같은 색이 되지는 않도록(즉, 적어도 한 원소는 나머지와 다른 색이 되도록) 칠할 수 있는지 판단하는 것이 목표다.

이러한 함수 ff가 존재하는지 판별하는 프로그램을 작성하시오.

입력

U={x1,x2,…,xn}U = \{ x_1, x_2, \dots, x_n \} 이다.

첫째 줄에 테스트 케이스의 개수 kk가 주어진다. 각 테스트 케이스는 빈 줄로 구분된다.

각 테스트 케이스의 첫째 줄에는 두 정수 nn과 mm이 주어진다. 이어지는 mm개의 줄 중 ii번째 줄에는 집합 SiS_i에 속하는 원소들의 번호가 공백으로 구분되어 주어진다. 번호 jj는 원소 xjx_j를 뜻하며, 각 번호는 11 이상 nn 이하이다.

출력

각 테스트 케이스마다 조건을 만족하는 함수 ff가 존재하면 Y를, 존재하지 않으면 N을 출력한다. 모든 테스트 케이스의 답을 순서대로 공백 없이 한 줄에 이어 붙여 출력한다.

제한

  • 1≤k≤131 \le k \le 13
  • 4≤n≤224 \le n \le 22
  • 3≤m≤1113 \le m \le 111
  • ∣Si∣≤3\left| S_i \right| \le 3

예제3

  1. 예제 1

    입력
    2
    5 3
    1 2 3
    2 3 4
    1 3 5
    
    7 7
    1 2
    1 3
    4 2
    4 3
    2 3
    1 4
    5 6 7
    
    예상 출력
    YN
    
  2. 예제 2

    입력
    1
    4 3
    1 2 3
    2 3 4
    1 3 4
    
    예상 출력
    Y
    
  3. 예제 3

    입력
    1
    4 4
    1 2
    2 3
    3 4
    1 4
    
    예상 출력
    Y