올바른 괄호 문자열 찾기
시간 제한1초메모리 제한1024 MB
두 단계 문제로, 처음 N개 괄호를 읽고 20비트 정수 w를 넘긴 뒤, 뒤 N개 괄호와 w만으로 S+S의 길이 2N 올바른 괄호 부분 문자열을 출력한다.
문제
이 문제는 투 스텝 문제입니다.
( 개와 ) 개로 이루어진 길이 의 괄호 문자열 에 대해, 를 연속으로 개 이어붙인 길이 의 문자열 에서 길이 의 올바른 괄호 부분 문자열을 찾아라.
하지만 이 문제는 투 스텝 문제이기 때문에 당신은 두 단계에 걸쳐 문자열 의 앞 절반과 뒤 절반을 따로 보아야 한다.
첫 번째 단계에서 당신은 에서 첫 번째 괄호부터 번째 괄호까지 개의 괄호를 본 뒤, 를 만족하는 정수 를 두 번째 단계로 전달할 수 있다. 이외의 정보는 전달할 수 없다.
두 번째 단계에서 당신은 에서 앞에서부터 번째 괄호부터 번째 괄호까지 개의 괄호를 본 뒤, 첫 번째 단계에서 당신이 전달한 정수 를 토대로 의 길이 의 올바른 괄호 문자열들 중 하나를 찾아야 한다.
입력
당신의 프로그램은 채점 데이터 하나당 총 두 번 실행된다. 당신은 하나의 소스 코드에 두 단계의 실행 과정을 모두 구현해야 한다.
모든 입력의 첫 줄에는 실행 단계를 나타내는 정수 가 주어진다. ()
만약 가 이라면 첫 번째 단계를 수행해야 하고, 가 라면 두 번째 단계를 수행해야 한다.