시간 제한
메모리 제한
시간 제한
1초
메모리 제한
128 MB
집합 X를 다음 규칙으로 정의되는 가장 작은 집합이라고 하자.
X의 원소를 올바른 괄호 표현식이라고 부른다. 예를 들어 다음 문자열들은 올바른 괄호 표현식이다.
()(())()(()(()))반면 다음 문자열들은 올바른 괄호 표현식이 아니다.
(()))(()())(()올바른 괄호 표현식 E에 대해, E의 길이는 E에 들어 있는 괄호 문자의 개수이다. E의 깊이 D(E)는 다음과 같이 정의된다.
D(E)=⎩⎨⎧0D(A)+1max(D(A),D(B))E가 빈 문자열인 경우E=(A), A∈X인 경우E=AB, A,B∈X인 경우두 양의 정수 n과 d가 주어질 때, 길이가 정확히 n이고 깊이가 정확히 d인 올바른 괄호 표현식의 개수를 구하여라.
한 줄에 두 정수 n과 d가 공백 하나로 구분되어 주어진다. 2≤n≤38, 1≤d≤19이다.
길이가 n이고 깊이가 d인 올바른 괄호 표현식의 개수를 정수 하나로 출력한다.
길이가 6이고 깊이가 2인 올바른 괄호 표현식은 정확히 세 개 있다.
(())()()(())(()())()(())()(()(()))(()))(()())(()(())()()(())(()())