문자열 비교

문제 정보

문제

ACM(Ap Chook Method)형식으로 압축된 두 문자열 A, B가 주어진다. 압축을 풀었을 때, 두 문자열이 같은지 비교하는 프로그램을 작성하시오.

ACM 형식 압축

  1. ACM 형식 압축은 알파벳 대문자로 구성된 문자열을 압축한다.
  2. 괄호와 숫자를 이용해 반복되는 부분 문자열을 짧게 표현할 수 있다. 예를 들어, RUNRUNRUN을 (RUN)^3으로 표현할 수 있다.
  3. 괄호 안에는 적어도 하나 이상의 알파벳 대문자가 들어가고, 알파벳 대문자 외에 다른 문자는 들어갈 수 없다. 다시 말해, 괄호 안에 다시 괄호가 들어갈 수는 없다.
  4. ')' 바로 다음에는 항상 '^'를 쓰고, '^' 바로 다음에는 괄호 안의 문자열이 반복되는 횟수를 쓴다.
  5. 반복되는 횟수는 1이상 1억 이하의 정수다.

아래는 ACM 형식으로 압축된 문자열에 대한 몇 가지 예제다. 왼쪽은 압축된 문자열이고, 오른쪽은 압축을 푼 문자열이다.
C(O)^2KIE(RUN)^5 = COOKIERUNRUNRUNRUNRUN
CO(OKIER)^1(UNR)^4UN = COOKIERUNRUNRUNRUNRUN
KCM(HAD)^2HI(S)^2ECONDWFEARLY = KCMHADHADHISSECONDWFEARLY
KR(I)^3T(O)^2 = KRIIITOO
JONGMANALSO = JONGMANALSO

입력

첫 번째 줄에 테스트 케이스의 수 T가 주어진다.
각 테스트 케이스는 두 줄로 구성되며 첫 번째 줄에는 압축된 문자열 A, 두 번째 줄에는 압축된 문자열 B가 주어진다. 압축된 문자열 A와 B의 길이는 5이상 1000이하이고, 압축을 푼 문자열은 알파벳 대문자로만 구성된다. 위에 설명한 형식에 어긋나는 입력은 주어지지 않는다.

출력

각 테스트 케이스에 대해 압축을 풀었을 때, 두 문자열이 같으면 "YES"를 출력하고, 다르면 "NO"를 출력한다.

예제 입력

3
C(O)^2KIE(RUN)^5
COOKIER(UNR)^4UN
C(O)^2KIE(RUN)^50
CO(OKIER)^1(UNR)^49UN
KR(I)^3(I)^4
K(RI)^4

예제 출력

YES
YES
NO

노트

4개의 댓글이 있습니다.