2018. 5. 24. 14:41, 알고리즘/BOJ
https://www.acmicpc.net/problem/12013
D[i][j]를 num[i~j]로 만들 수 있는 수입니다. 이 때, unique한 수로 만들 수 없으면 0으로 둡니다. 예를 들어 1 1 1 1일 경우 D[1][2]는 2, D[1][3]은 0이 됩니다. 이 때 D[i][i] = num[i]로 두고, D[i][j]는 sep = i to j-1에 대해 D[i][sep] == D[sep+1][j]일 경우 D[i][j] = max(D[i][j], D[i][sep]+1)입니다.
이 때 D 테이블의 최댓값이 정답입니다.
'알고리즘 > BOJ' 카테고리의 다른 글
[BOJ] 10846번: Bali Sculptures (0) | 2018.05.28 |
---|---|
[BOJ] 1627번: 결투 (4) | 2018.05.27 |
[BOJ] 12094번: 2048 (7) | 2018.05.25 |
[BOJ] 1214번: 쿨한 물건 구매 (0) | 2018.05.24 |
[BOJ] 13258번: 복권 + 은행 (0) | 2018.05.24 |
[BOJ] 14867번: 물통 (0) | 2018.05.23 |
Comments