0과 1로 이루어진 두 단어 집합이 주어질 때, 첫 번째 집합의 단어를 하나 이상 이어 붙인 문자열이 두 번째 집합의 단어를 하나 이상 이어 붙인 문자열과 같아질 수 있는지 판정한다.
보통7문자열BFS그래프수학아직 제출이 없습니다시간 제한2초메모리 제한512 MB
문제 설명
예제2
문제
0과 1로만 이루어진 단어의 집합이 두 개 주어진다. 첫 번째 집합에서 단어를 하나 이상 골라 이어 붙인 문자열과 두 번째 집합에서 단어를 하나 이상 골라 이어 붙인 문자열이 서로 같아지는 경우가 있는지 판별하는 프로그램을 작성한다. 한 단어를 여러 번 써도 된다.
예를 들어 첫 번째 집합이 010과 11로, 두 번째 집합이 0과 101로 이루어져 있으면 01011010은 두 집합에서 모두 만들 수 있다.
010 + 11 + 010 = 01011010 = 0 + 101 + 101 + 0
입력
입력은 여러 개의 테스트 케이스로 이루어지고, 파일이 끝날 때까지 이어진다.
각 테스트 케이스의 첫 줄에는 두 정수 N1과 N2가 주어진다. N1은 첫 번째 집합의 단어 개수, N2는 두 번째 집합의 단어 개수다. 다음 N1개의 줄에는 첫 번째 집합의 단어가 한 줄에 하나씩 주어지고, 그 뒤 N2개의 줄에는 두 번째 집합의 단어가 한 줄에 하나씩 주어진다.
제약
1≤N1,N2≤20
각 단어의 길이는 1 이상 40 이하이고, 0과 1로만 이루어진다.
출력
테스트 케이스마다 문자 하나를 한 줄에 출력한다. 첫 번째 집합의 단어를 하나 이상 이어 붙인 문자열과 두 번째 집합의 단어를 하나 이상 이어 붙인 문자열이 같아지는 경우가 있으면 S를, 없으면 N을 출력한다.