-
코드
m = list(input()) n = list(input()) m_len = len(m) n_len = len(n) dp = [[0] * (n_len + 1) for i in range(m_len + 1)] for i in range(m_len): for j in range(n_len): if m[i] == n[j]: dp[i + 1][j + 1] = dp[i][j] + 1 else: dp[i + 1][j + 1] = max(dp[i][j + 1], dp[i + 1][j]) print(dp[m_len][n_len])
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 12865번 평범한 배낭 (파이썬) (0) 2022.01.02 [백준] 1912번 연속합 (파이썬) (0) 2022.01.02 [백준] 2565번 전깃줄 (파이썬) (0) 2022.01.02 [백준] 11054번 가장 긴 바이토닉 부분 수열 (파이썬) (0) 2022.01.01 [백준] 11053번 가장 긴 증가하는 부분 수열 (파이썬) (0) 2022.01.01