괄호 교환
시간 제한1.5초메모리 제한1024 MB
괄호 문자열에서 위치 집합 S 안의 괄호를 자유롭게 섞어 올바른 괄호 문자열을 만들 수 있는 S의 개수를 998244353으로 나눈 나머지로 구합니다.
문제
여는 괄호 개와 닫는 괄호 개로 이루어진 괄호 수열이 주어진다. 는 이상 이하의 정수로 이루어진 공집합이 아닌 집합이다. 에 속한 두 위치를 골라 그 위치의 괄호를 서로 바꿀 수 있다. 두 위치는 서로 인접하지 않아도 된다.
이 연산을 임의의 횟수만큼 반복하여 올바른 괄호 수열을 만들 수 있는 의 개수를 구하라.
입력
첫 번째 줄에 정수 이 주어진다.
두 번째 줄에는 ( 또는 )로 이루어진 길이 의 괄호 문자열이 주어진다.
출력
가능한 집합 의 개수를 으로 나눈 나머지를 출력한다. 은 소수이다.
제한
- 주어진 괄호 문자열에는 여는 괄호 개와 닫는 괄호 개가 들어 있다.