설명
두 생물의 DNA 서열을 비교하려 한다. 각 서열은 알파벳 대문자로 이루어진 문자열로 주어진다.
두 문자열 \(A\), \(B\)의 최장 공통 부분 수열(LCS) 의 길이를 구하여라. 부분 수열이란 원래 문자열에서 일부 문자를 (순서를 바꾸지 않고) 골라내어 만든 수열을 말한다. 공통 부분 수열이 하나도 없으면 길이는 \(0\)이다.
제약
- \(1 \le |A|, |B| \le 2{,}000\)
입력 형식
첫째 줄에 문자열 \(A\)가 주어진다.
둘째 줄에 문자열 \(B\)가 주어진다.
두 문자열은 알파벳 대문자(A–Z)로만 이루어진다.
출력 형식
두 문자열의 최장 공통 부분 수열의 길이를 한 줄에 출력한다.
예제 1
입력
ACAYKP
CAPCAK
출력
4설명
공통 부분 수열 ACAK의 길이 \(4\)가 최장이다.
예제 2
입력
ABC
DEF
출력
0설명
공통 문자가 전혀 없으므로 LCS 길이는 \(0\).
문제 정보
riseoj 작성
출처 Original
태그