단조성
시간 제한3초메모리 제한512 MB
주어진 수열의 부분수열 가운데 인접한 원소 사이의 비교 부호가 길이 k인 주어진 패턴을 반복하는 가장 긴 부분수열의 길이를 구한다.
문제
정수 수열 에 대해, 그 단조성 표식(monotonicity scheme) 을 기호 , , 로 이루어진 수열 로 정의한다. 기호 는 와 사이의 대소 관계를 나타낸다. 예를 들어 수열 의 단조성 표식은 이다.
단조성 표식이 인 정수 수열 이 다른 단조성 표식 를 실현한다(realize) 는 것은, 모든 에 대해 이 성립함을 뜻한다. 즉, 수열 은 수열 를 반복한 뒤 알맞은 접미사를 잘라내어 얻을 수 있다. 예를 들어 수열 은 다음 표식들을 모두 실현한다.
이 외에도 많은 표식을 실현한다.
정수 수열 과 단조성 표식 가 주어진다. 주어진 수열의 부분 수열 () 중에서 주어진 표식을 실현하는 가장 긴 것을 찾으시오.
입력
첫째 줄에 수열 의 길이와 단조성 표식 의 길이를 나타내는 두 정수 과 (, ) 가 공백 하나로 구분되어 주어진다.
둘째 줄에 수열 가 주어진다. 즉, 개의 정수 () 가 공백 하나로 구분되어 주어진다.
셋째 줄에 단조성 표식 가 주어진다. 즉, 각각 , , 중 하나인 개의 기호 가 공백 하나로 구분되어 주어진다.
출력
첫째 줄에 수열 의 부분 수열 중에서 표식 를 실현하는 것의 최대 길이 을 정수 하나로 출력한다.