#173
Gold II
Jumpring
시간 제한
1s
메모리 제한
1024MB
제출
0
정답
0
맞힌 사람
0
정답 비율
0.0%

문제

길이가 NN인 문자열 S=s1,s2,,sNS=s_1, s_2, \cdots, s_N가 주어진다. 승우는 이 문자열에서 0개 이상의 문자를 제거하여 길이가 MM인 새로운 문자열 UU를 만들고자 한다. 두 문자열은 영어 소문자로 이루어져 있으며, MMNN보다 작거나 같다.

이때 승우는 서로 인접한 두 문자를 제거할 수는 없다. 즉, 승우는 다음과 같이 문자를 제거한다.

  • 제거할 문자의 개수 K(0KN2)K(0\le K\le \lceil \frac{N}{2}\rceil)를 선택한다.
  • 길이가 KK인 정수열 x1,x2,,xK (1xiN)x_1, x_2, \cdots , x_K\ (1\le x_i \le N)을 구성하는데, 이 정수열은 오름차 순으로 정렬되어 있고, 인접한 두 수의 차가 2 이상이다.
  • SS에서 sx1,sx2,,sxKs_{x_1}, s_{x_2}, \cdots, s_{x_K}를 제거한다.

SS에서 0개 이상의 문자를 제거하여 UU를 만들 수 있는지 판별하는 프로그램을 작성해 보자.

입력

첫째 줄에 테스트 케이스의 개수 TT가 주어진다. (1T10000)(1 \leq T \leq 10\,000)

각 테스트 케이스의 첫째 줄에 NNMM이 공백으로 구분되어 주어진다. (1MN100000)(1\le M \le N \le 100\,000)

둘째 줄에 문자열 SS가 주어진다.

셋째 줄에 문자열 UU가 주어진다.

SSUU는 영어 소문자로 이루어져 있으며, 모든 테스트 케이스에서 N×MN\times M의 합은 2×1072\times 10^7을 초과하지 않는다.

출력

각 테스트 케이스에 대해서, SSTT로 만들 수 있다면 YES를, 만들 수 없다면 NO를 한 줄씩 출력한다.

예제 입력 1

2
7 4
abcdefg
aceg
7 5
abcdefg
abefg

예제 출력 1

YES
NO
  • 첫 번째 테스트 케이스에서는, SS에서 s2s_2, s4s_4, s6s_6을 제거하면 UU를 만들 수 있다.
  • 두 번째 테스트 케이스에서는, SSUU로 만들기 위해서 s3s_3s4s_4를 제거해야 하지만, 서로 인접한 두 문자를 제거할 수는 없으므로 UU를 만들 수 없다.
문제를 만든 사람
황현석
알고리즘 분류
코드 제출

코드를 제출하려면 로그인이 필요합니다.

로그인
내 제출
제출 내역이 없습니다.
맞은 사람
아직 맞은 사람이 없습니다.
난이도 투표
Gold II1명 투표· 약 2개월 전
로그인 후 AC 받으면 투표할 수 있습니다.
전체 제출
제출 내역이 없습니다.