2018. 1. 7. 14:20, 알고리즘/BOJ
https://www.acmicpc.net/problem/1958
D[i][j][k]를 s1[0~i-1], s2[0~j-1], s3[0~k-1]의 subsequence 중 최대 길이라고 할 때
s1[i-1], s2[j-1], s3[k-1]이 같다면 D[i][j][k] = D[i - 1][j - 1][k - 1] + eq3(s1[i - 1], s2[j - 1], s3[k - 1]) 이고
그렇지 않다면 D[i][j][k] = max(D[i - 1][j][k], D[i][j - 1][k], D[i][j][k - 1]); 입니다.
실제로 문제를 풀 때에는 Substrng인줄 알고 몇 번 틀렸습니다.
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 1017번: 소수 쌍 (0) | 2018.01.07 |
---|---|
[BOJ] 1946번: 신입 사원 (0) | 2018.01.07 |
[BOJ] 2110번: 공유기 설치 (0) | 2018.01.07 |
[BOJ] 11931번: 수 정렬하기 4 (0) | 2018.01.07 |
[BOJ] 1967번: 트리의 지름 (0) | 2018.01.07 |
[BOJ] 2169번: 로봇 조종하기 (0) | 2018.01.07 |
Comments