Jumpring
시간 제한1초메모리 제한1024 MB
S에서 인접한 두 문자를 동시에 지울 수 없다는 조건 아래, 문자를 삭제해 U를 만들 수 있는지 판별한다.
문제
길이가 인 문자열 가 주어진다. 승우는 이 문자열에서 개 이상의 문자를 제거하여 길이가 인 새로운 문자열 를 만들고자 한다. 두 문자열은 영어 소문자로 이루어져 있다.
이때 승우는 서로 인접한 두 문자를 제거할 수는 없다. 즉, 승우는 다음과 같이 문자를 제거한다.
- 제거할 문자의 개수 를 선택한다.
- 길이가 인 정수열 을 구성한다. 이 정수열은 오름차순으로 정렬되어 있고, 인접한 두 수의 차가 이상이다.
- 에서 를 제거한다.
에서 개 이상의 문자를 제거하여 를 만들 수 있는지 판별하는 프로그램을 작성해 보자.
입력
첫째 줄에 테스트 케이스의 개수 가 주어진다.
각 테스트 케이스의 첫째 줄에 과 이 공백으로 구분되어 주어진다.
각 테스트 케이스의 둘째 줄에 문자열 가 주어진다.
각 테스트 케이스의 셋째 줄에 문자열 가 주어진다.
와 는 영어 소문자로 이루어져 있으며, 모든 테스트 케이스에서 의 합은 을 초과하지 않는다.
출력
각 테스트 케이스마다 를 로 만들 수 있다면 YES를, 만들 수 없다면 NO를 출력한다.