提出 #15892946
ソースコード 拡げる
import java.util.*;
public class Main {
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
String s = sc.next();
String t = sc.next();
Lcs(s.toCharArray(), t.toCharArray());
}
public static void Lcs(char[] s, char[] t) {
int[][] dp = new int[s.length + 1][t.length + 1];
helper(s, t, dp, s.length, t.length);
StringBuilder sb = new StringBuilder("");
dfs(dp, s, t, s.length, t.length, sb);
System.out.println(sb);
}
private static void dfs(int[][] dp, char[] s, char[] t, int i, int j, StringBuilder result) {
if (i == 0 || j == 0)
return;
if (s[i - 1] == t[j - 1]) {
dfs(dp, s, t, i - 1, j - 1, result);
result.append(s[i - 1]);
return;
}
if (dp[i - 1][j] == dp[i][j]) {
dfs(dp, s, t, i - 1, j, result);
return;
} else {
dfs(dp, s, t, i, j - 1, result);
return;
}
}
private static int helper(char[] s, char[] t, int[][] dp, int i, int j) {
if (i == 0 || j == 0) {
return 0;
}
if (dp[i][j] != 0) {
return dp[i][j];
}
if (s[i - 1] == t[j - 1]) {
dp[i][j] = 1 + helper(s, t, dp, i - 1, j - 1);
} else {
dp[i][j] = Math.max(helper(s, t, dp, i - 1, j), helper(s, t, dp, i, j - 1));
}
return dp[i][j];
}
}
提出情報
| 提出日時 |
|
| 問題 |
F - LCS |
| ユーザ |
nachik |
| 言語 |
Java (OpenJDK 11.0.6) |
| 得点 |
0 |
| コード長 |
1274 Byte |
| 結果 |
TLE |
| 実行時間 |
2209 ms |
| メモリ |
87448 KiB |
ジャッジ結果
| セット名 |
All |
| 得点 / 配点 |
0 / 100 |
| 結果 |
|
| セット名 |
テストケース |
| All |
0_00, 0_01, 0_02, 0_03, 1_00, 1_01, 1_02, 1_03, 1_04, 1_05, 1_06, 1_07, 1_08, 1_09, 1_10, 1_11, 1_12, 1_13 |
| ケース名 |
結果 |
実行時間 |
メモリ |
| 0_00 |
AC |
106 ms |
35368 KiB |
| 0_01 |
AC |
103 ms |
35472 KiB |
| 0_02 |
AC |
100 ms |
35320 KiB |
| 0_03 |
AC |
100 ms |
35452 KiB |
| 1_00 |
AC |
113 ms |
35500 KiB |
| 1_01 |
AC |
108 ms |
35308 KiB |
| 1_02 |
AC |
158 ms |
85284 KiB |
| 1_03 |
TLE |
2209 ms |
87132 KiB |
| 1_04 |
TLE |
2209 ms |
87352 KiB |
| 1_05 |
TLE |
2209 ms |
87220 KiB |
| 1_06 |
AC |
156 ms |
85348 KiB |
| 1_07 |
AC |
238 ms |
87040 KiB |
| 1_08 |
AC |
276 ms |
87092 KiB |
| 1_09 |
AC |
273 ms |
87140 KiB |
| 1_10 |
AC |
261 ms |
87212 KiB |
| 1_11 |
AC |
272 ms |
87180 KiB |
| 1_12 |
AC |
264 ms |
87404 KiB |
| 1_13 |
AC |
258 ms |
87448 KiB |