BOJ 17428 : K번째 괄호 문자열

2021. 8. 14. 01:00PS/DP

https://www.acmicpc.net/problem/17428

 

17428번: K번째 괄호 문자열

첫째 줄에 K번째 괄호 문자열을 출력한다. K번째 괄호 문자열이 없는 경우에는 -1을 출력한다.

www.acmicpc.net

걍 dp문제인데 재밌다.

dp[i][j] = 길이가 i이고, 완성되지 않은 괄호쌍이 j개일 때 만들 수 있는 괄호쌍 갯수

dp[i][j] = dp[i+1][j+1] ('('를 넣을 때) + dp[i+1][j-1] (')'를 넣을 때) 

 

문자열 구하는건 간단하다.

"'('를 넣을 때"와 "')'를 넣을 때"를 분리해서 K번째 문자열을 구해주면 된다.

코드

'PS > DP' 카테고리의 다른 글

BOJ 5573 : 산책  (0) 2021.11.16
BOJ 1023 : 올바른 괄호  (0) 2021.08.17
BOJ 6171 : 땅따먹기  (1) 2021.08.08
BOJ 1066 : 에이한수  (0) 2021.08.03
BOJ 22348 : 헬기 착륙장  (0) 2021.07.31