- 前ページ
- 次ページ
【入力例】
4
4
abcd
becd
【出力例】
3
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
char[] s = sc.next().toCharArray();
char[] t = sc.next().toCharArray();
int[][] dp = new int[n+1][m+1];
for (int i=0; i<n; i++) {
for (int j=0; j<m; j++) {
if (s[i] == t[j]) {
dp[i+1][j+1] = dp[i][j] + 1;
} else {
dp[i+1][j+1] = Math.max(dp[i][j+1], dp[i+1][j]);
}
}
}
System.out.println(dp[n][m]);
}
}