ABC
시간 제한1초메모리 제한128 MB
a, b, c로 이루어진 두 문자열의 공통 부분수열 중 알파벳 순서로 감소하지 않는 것의 최대 길이를 구합니다.
문제
소문자 'a', 'b', 'c'로만 이루어진 두 문자열 와 가 주어진다. 와 의 가장 긴 비내림차순 공통 부분 수열의 길이를 구하라. 즉, 다음 두 조건을 모두 만족하는 가장 긴 수열을 찾으면 된다.
- 의 부분 수열이면서 동시에 의 부분 수열이다. 다시 말해 와 에서 각각 글자 몇 개(0개일 수도 있다)를 지워서 만들 수 있다.
- 알파벳 순서로 비내림차순이다. 즉 어떤 글자 의 앞에는 보다 알파벳에서 뒤에 오는(아스키 코드가 더 큰) 글자가 나오지 않는다. 세 글자의 순서는 이다.
입력
첫째 줄에 두 문자열 와 의 길이를 나타내는 두 정수 과 이 주어진다 (). 둘째 줄에 문자열 가, 셋째 줄에 문자열 가 주어진다. 두 문자열은 모두 소문자 'a', 'b', 'c'로만 이루어져 있다.
출력
조건을 만족하는 가장 긴 수열의 길이를 첫째 줄에 출력한다.
힌트
예제 입력에서 조건을 만족하는 가장 긴 수열은 "abc"이며, 그 길이는 이다.