import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
String strr = sc.nextLine();
int[][] dp = new int[1002][1002];
String s1 = "0"+str;
String s2 = "0"+strr;
char[] ar = s1.toCharArray();
char[] arr = s2.toCharArray();
for(int i=1;i<ar.length;i++){
for(int j=1;j<arr.length;j++){
if(ar[i] == arr[j]){
dp[i][j] = dp[i-1][j-1]+1;
}else{
dp[i][j] = Math.max(dp[i-1][j], dp[i][j-1]);
}
}
}
System.out.println(dp[ar.length-1][arr.length-1]);
}
}
반응형
'알고리즘 > Baekjoon' 카테고리의 다른 글
[Baekjoon] #5054 주차의 신 (0) | 2024.04.18 |
---|---|
[Baekjoon] #5567 결혼식 (0) | 2024.04.18 |
[Baekjoon] #9328 열쇠 (0) | 2024.04.08 |
[Baekjoon] #9461 파도반 수열 (0) | 2024.04.08 |
[Baekjoon] #9465 스티커 (0) | 2024.04.08 |