Leave Out All The Rest
시간 제한2초메모리 제한512 MB
서로 다른 값을 가진 두 배열을 하나로 교차 배치해 만든 수열의 최장 증가 부분 수열 길이를 최대로 만들고, 그 최댓값을 출력한다.
문제
길이 인 정수 배열 와 길이 인 정수 배열 가 주어진다. 두 배열에 들어 있는 모든 정수는 서로 다르다.
두 배열의 인터리빙은 와 가 서로소인 부분수열로 들어 있는 크기 의 배열 이다. 정확히는 , , , 인 인덱스 과 , , , 인 인덱스 이 존재한다. 이 인덱스들은 모든 과 모든 에 대해 를 만족한다.
배열 와 를 인터리빙하는 방법은 보통 여러 가지다. 의 최장 증가 부분수열의 길이가 최대가 되는 인터리빙을 구하라.
입력
첫째 줄에 정수 ()이 주어진다. 이는 배열 의 길이이다.
둘째 줄에 개의 정수 ()가 주어진다.
셋째 줄에 정수 ()이 주어진다. 이는 배열 의 길이이다.
넷째 줄에 개의 정수 ()가 주어진다.
두 배열의 수는 모두 서로 다르다. 즉 이면 이고, 이면 이며, 모든 올바른 와 에 대해 이다.
출력
와 를 인터리빙한 배열의 최장 증가 부분수열 길이의 최댓값을 정수 하나로 출력한다.