Cowculations

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

문제

저명한 인류학자 Bo Vine 박사가 원시적인 소(cow) 문명의 흔적을 발견했다. 댈러스 인근 목초지에서 수백 개의 계산용 점토판이 발굴되었고, 박사는 이 점토판들이 수학 계산을 나타낸다는 사실을 알아냈다. 박사는 "소들이 겉으로 보이는 것보다 훨씬 똑똑하다고 늘 의심해 왔는데, 여기 그 증거가 있다"고 말한다.

각 점토판은 여섯 줄로 이루어지며, 각 줄은 소 기호(cow symbol)의 나열이다.

  • 1번째 줄과 2번째 줄: 두 개의 소 숫자
  • 3~5번째 줄: 그 숫자들에 적용할 연산
  • 6번째 줄: 결과

소 숫자는 네 가지 기호 V, U, C, D를 사용한다. 1번째와 2번째 줄의 숫자는 항상 기호 5개, 6번째 줄의 숫자는 항상 기호 8개로 이루어진다.

계산을 해석하려면 두 값 Num1과 Num2를 추적해야 한다. 처음에 Num1은 1번째 줄의 숫자이고 Num2는 2번째 줄의 숫자이다. Num1은 변하지 않지만 Num2는 연산에 의해 값이 바뀔 수 있다. 연산은 A, R, L, N 네 가지이다.

연산 A: Num2를 Num1과 Num2의 "합"으로 바꾼다. 덧셈은 아래 표를 따른다.

 A  | V    U    C    D
-----------------------
 V  | V    U    C    D
 U  | U    C    D   V,U
 C  | C    D   V,U  U,U
 D  | D   V,U  U,U  C,U

표의 각 칸에서 첫 번째 기호가 덧셈 결과이고, 두 번째 기호가 올림(carry)이다. 예를 들어 U A V = U이고, C A C = V(올림 U)이다. 덧셈 예시: VUCDV A VUCDV = VDUCV, DVVCU A CVUCU = UUVCVC.

연산 R: Num2의 기호들을 오른쪽으로 한 칸 민다. 가장 오른쪽 기호는 사라지고 가장 왼쪽에 V가 채워진다. 예: VVCDU → VVVCD.

연산 L: Num2의 기호들을 왼쪽으로 한 칸 민다. 가장 왼쪽 기호는 그대로 유지되고 가장 오른쪽에 V가 채워진다. 예: VVCDU → VVCDUV.

연산 N: 아무 효과가 없다.

세 연산을 모두 적용한 뒤의 Num2가 6번째 줄의 값과 같아야 한다. 최종 Num2가 기호 8개보다 짧으면 왼쪽을 V로 채운다(예: VDCCC → VVVVDCCC).

점토판의 형식(줄 수, 기호 개수, 기호 종류 등)은 이미 올바름이 보장되어 있다. 당신의 임무는 1~5번째 줄에 기술된 계산의 결과가 실제로 6번째 줄의 값과 일치하는지 확인하는 것이다.

입력

첫 줄에 점토판의 개수 $N$ ($1 \le N \le 10$)이 주어진다. 이어지는 $6 \times N$개의 줄이 위에서 설명한 형식으로 $N$개의 점토판을 나타낸다.

출력

각 점토판마다 한 줄씩 출력한다. 그 점토판이 박사의 가설을 따르면 YES를, 따르지 않으면 NO를 출력한다.