만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

문자열 분할

시간 제한1초메모리 제한1024 MB

요약
두 문자열 s와 t가 주어질 때, s에서 홀수 번째 문자나 짝수 번째 문자를 모두 지우는 연산을 반복해 s를 t로 만들 수 있는지 판단합니다.
난이도

보통10점 중 5점

유형
문자열, 수학, 완전 탐색
정답자
아직 제출이 없습니다

문제

두 문자열 ss와 tt가 주어진다. 한 번의 연산에서 ss의 홀수 번째 문자를 모두 지우거나, ss의 짝수 번째 문자를 모두 지울 수 있다.

예를 들어 abcdefg에 연산을 하면 aceg 또는 bdf가 된다.

ss에 연산을 0번을 포함해 몇 번이든 수행한 뒤 ss를 tt와 같게 만들 수 있는지 구하라.

입력

첫 번째 줄에 테스트 케이스의 개수 tt (1≤t≤1041 \le t \le 10^4)가 주어진다. 각 테스트 케이스는 다음과 같다.

각 테스트 케이스의 첫 번째 줄에는 소문자로만 이루어진 문자열 ss (1≤∣s∣≤2⋅1051 \le |s| \le 2\cdot 10^5)가 주어진다.

각 테스트 케이스의 두 번째 줄에는 소문자로만 이루어진 문자열 tt (1≤∣t∣≤2⋅1051 \le |t| \le 2\cdot 10^5)가 주어진다.

모든 테스트 케이스에 걸친 ∣s∣|s|의 합은 2⋅1052\cdot 10^5을 넘지 않는다. 마찬가지로 ∣t∣|t|의 합도 2⋅1052\cdot 10^5을 넘지 않는다.

출력

각 테스트 케이스마다 연산을 몇 번이든 수행한 뒤 ss를 tt와 같게 만들 수 있으면 "YES", 없으면 "NO"를 출력한다. 대소문자는 구분하지 않으므로 yEs, yes, Yes, YES 모두 긍정 답으로 인정된다.

힌트

첫 번째 테스트 케이스에서는 ss의 짝수 번째 문자를 모두 지우면 ss가 thomas가 되므로 s=ts = t이다.

두 번째 테스트 케이스에서는 ss의 길이가 tt의 길이보다 짧다. 연산을 하면 ss의 길이는 줄어들기만 하므로 ss가 tt와 같아질 수 없다.

세 번째 테스트 케이스에서는 연산을 하기 전부터 s=ts = t이다.

예제1

  1. 예제 1

    입력
    6
    tjhdoumraise
    thomas
    nick
    james
    baccba
    baccba
    abcdefg
    cde
    abcdabcd
    aa
    abcdabcd
    bc
    
    예상 출력
    YES
    NO
    YES
    NO
    YES
    NO