diff --git a/janghw0126/DP/LCS2.py b/janghw0126/DP/LCS2.py
new file mode 100644
index 0000000..dcafc34
--- /dev/null
+++ b/janghw0126/DP/LCS2.py
@@ -0,0 +1,33 @@
+import sys
+input = sys.stdin.readline
+
+# 문자열 입력 받기
+string1 = list(input().rstrip())
+string2 = list(input().rstrip())
+
+# LCS 길이 및 LCS 문자열 저장을 위한 DP 테이블 초기화
+dp_table = [[""] * (len(string2) + 1) for _ in range(len(string1) + 1)]
+
+# DP로 LCS 계산
+for i in range(1, len(string1) + 1):
+ for j in range(1, len(string2) + 1):
+ # 현재 문자가 같으면 이전 LCS에 해당 문자를 추가
+ if string1[i - 1] == string2[j - 1]:
+ dp_table[i][j] = dp_table[i - 1][j - 1] + string1[i - 1]
+ else:
+ # 현재 문자가 다를 경우 더 긴 LCS를 선택
+ if len(dp_table[i - 1][j]) >= len(dp_table[i][j - 1]):
+ dp_table[i][j] = dp_table[i - 1][j]
+ else:
+ dp_table[i][j] = dp_table[i][j - 1]
+
+# 최종 LCS 문자열
+lcs_result = dp_table[-1][-1]
+# 공통 부분 수열이 없는 경우
+if len(lcs_result) == 0:
+ # 결과 출력
+ print(0)
+else:
+ # 결과 출력
+ print(len(lcs_result))
+ print(lcs_result)
\ No newline at end of file
diff --git a/janghw0126/README.md b/janghw0126/README.md
index affdf6d..013a1d3 100644
--- a/janghw0126/README.md
+++ b/janghw0126/README.md
@@ -54,4 +54,5 @@
| 16차시 | 2024.10.30 | 스택 | 문자열 폭발 |[#183](https://github.com/AlgoLeadMe/AlgoLeadMe-4/pull/183) |
| 17차시 | 2024.11.3 | 이진 탐색 | 랜선 자르기 |[#186](https://github.com/AlgoLeadMe/AlgoLeadMe-4/pull/186) |
| 18차시 | 2024.11.12 | 브루트포스 | 카잉 달력 |[#188](https://github.com/AlgoLeadMe/AlgoLeadMe-4/pull/188) |
+| 19차시 | 2024.12.2 | DP | LCS 2 |[#191](https://github.com/AlgoLeadMe/AlgoLeadMe-4/pull/191) |
---
\ No newline at end of file