한 게임 회사가 고전 게임 '뱀(Snake)'을 완전 그래프 위에서 즐기는 새 버전으로 만들기로 했다. 완전 그래프란 서로 다른 임의의 두 꼭짓점이 항상 간선으로 연결되어 있는 그래프이다.
이 게임에서 길이가 M인 뱀은 완전 그래프의 서로 다른 꼭짓점 M개를 지나는 방향 경로 v1,v2,…,vM이다. v1은 머리, vM은 꼬리이며, 이웃한 두 꼭짓점은 간선으로 이어져 있다.
한 번의 이동은 다음과 같다. 머리 v1이 현재 뱀이 차지하지 않은(비어 있는) 꼭짓점 u로 움직이면, 몸 전체가 한 칸씩 앞으로 밀려 꼬리가 있던 vM 칸이 비게 되고 뱀은 u,v1,…,vM−1이 된다. 그래프가 완전 그래프이므로 u로는 현재 비어 있는 어떤 꼭짓점이든 고를 수 있다. (머리는 몸통이나 꼬리가 차지한 칸으로는 이동할 수 없다.)
어느 수학자는, 유한 번의 이동으로 뱀을 '뒤집을' 수 있다면(같은 간선들을 그대로 차지한 채 머리와 꼬리의 위치만 서로 바뀌게 만들 수 있다면) 이것이 곧 뱀을 그래프 위의 임의의 배치로 바꿀 수 있다는 사실과 동치임을 증명했다. 따라서 게임의 검증은 '주어진 시작 배치에서 뱀을 뒤집을 수 있는가'를 판정하는 문제로 귀결된다.
뱀을 뒤집는다는 것은, 이동을 거듭하여 뱀이 vM,vM−1,…,v1 배치(처음 경로를 거꾸로 읽은 것과 같은 배치)가 되도록 만드는 것이다.
각 시나리오에 대해 뱀을 뒤집는 것이 가능한지 판정하여라.
첫째 줄에 시나리오의 개수 T (1≤T≤100)가 주어진다.
이어서 각 시나리오가 주어진다. 하나의 시나리오는 꼭짓점의 개수 N (3≤N≤100), 뱀의 길이 M (2≤M≤N), 그리고 머리에서 꼬리 순서로 뱀을 나타내는 서로 다른 꼭짓점 번호 M개로 이루어진다. 꼭짓점은 1부터 N까지 번호가 매겨져 있다.
각 시나리오마다 한 줄에, 뱀을 뒤집을 수 있으면 YES를, 그렇지 않으면 NO를 출력하여라.