문자열 삽입과 출력
시간 제한10초메모리 제한256 MB
하나의 문자열에 위치 지정 삽입을 적용하고 요청된 구간을 그대로 출력합니다.
문제
문자열 하나를 유지하면서 삽입 연산과 출력 연산을 주어진 순서대로 처리한다. 삽입 연산은 의 지정한 위치에 새 문자열을 끼워 넣고, 출력 연산은 의 지정한 구간을 그대로 출력한다. 특별한 아이디어가 필요한 문제는 아니고 구현이 전부다.
입력
첫 줄에 테스트 케이스의 수 가 주어진다. ()
각 테스트 케이스의 첫 줄에 문자열 가 주어진다. ()
이어서 연산이 한 줄에 하나씩 주어진다. 연산 줄은 적어도 한 줄이다. 인덱스는 0부터 센다.
I R X: 의 인덱스 자리에 문자열 을 삽입한다. () 삽입한 뒤 의 첫 글자가 인덱스 에 온다. 이면 의 뒤에 을 이어 붙인다. 예를 들어 가abc일 때I xy 1의 결과는axybc,I xy 3의 결과는abcxy,I xy 0의 결과는xyabc다.P X Y: 의 인덱스 부터 인덱스 까지의 문자를 출력한다. () 예를 들어 가abc일 때P 0 2는abc를,P 1 1은b를 출력한다.END: 테스트 케이스가 끝났다는 뜻이다.
와 은 알파벳 소문자로만 이루어진다. 연산을 처리하는 동안 의 길이가 100만을 넘는 경우는 없고, 출력하는 문자의 개수를 모든 테스트 케이스에서 합해도 100만을 넘지 않는다.
입력과 출력의 양이 많으므로 빠른 입출력을 쓰는 편이 좋다.
출력
P X Y 연산이 나올 때마다 대응하는 부분 문자열을 한 줄에 출력한다.