단조성 2
시간 제한3초메모리 제한512 MB
주어진 배열에서 인접 원소의 대소 관계가 주어진 <, >, = 주기 패턴을 따르는 가장 긴 부분수열의 길이를 구한다.
문제
정수 수열 에 대해, 이 수열의 단조성 표현을 기호 의 수열로 정의한다. 각 기호 는 와 의 대소 관계를 나타내며, 이면 , 이면 , 이면 이다. 예를 들어 수열 의 단조성 표현은 이다.
단조성 표현이 인 수열이 또 다른 표현 를 실현한다는 것은, 모든 에 대해 이 성립함을 뜻한다. 다시 말해 은 를 필요한 만큼 반복한 뒤 뒤쪽 일부를 잘라내어 얻을 수 있다. 예를 들어 은 와 , 그리고 등 많은 표현을 실현한다.
정수 수열 과 단조성 표현 가 주어진다. 인덱스가 인 부분 수열 중에서, 그 자신의 단조성 표현이 를 실현하는 것을 생각하자. 이러한 부분 수열의 최대 길이 을 구하라. 원소가 하나뿐인 부분 수열은 (단조성 표현이 비어 있으므로) 항상 주어진 표현을 실현하므로, 답은 항상 이상이다.
입력
첫째 줄에 두 정수 과 가 공백으로 구분되어 주어진다 (, ). 각각 수열의 길이와 단조성 표현의 길이이다.
둘째 줄에 수열의 원소 이 공백으로 구분되어 주어진다 ().
셋째 줄에 단조성 표현을 이루는 개의 기호 가 공백으로 구분되어 주어진다. 각 기호는 , , 중 하나이다.
출력
부분 수열 자신의 단조성 표현이 를 실현하는 부분 수열의 최대 길이 을 정수 하나로 출력한다.