마지막 단어
시간 제한1초메모리 제한512 MB
문자열과 일련의 substring(start, length) 연산이 주어질 때, 모든 연산을 순서대로 적용한 뒤 남는 문자열을 출력한다.
문제
substring() 함수는 대부분의 프로그래밍 언어에서 문자열을 다룰 때 흔히 쓰이는 연산이다. 시작 위치와 길이를 주면, 시작 위치부터 그 길이만큼의 문자를 담은 새 문자열을 만든다.
어떤 문자열에 대해 이 함수를 연달아 아주 많이 호출했다. 표준 라이브러리 함수 substring(s, start, length)로 문자열을 계속 잘라낸 결과, 지금은 처음보다 훨씬 짧을 수도 있는 문자열이 남았다.
이 모든 연산을 거친 뒤 남은 문자열을 구하라.
입력
- 첫째 줄에 문자열 s가 주어진다. (1 ≤ |s| ≤ 106)
- 둘째 줄에 연산의 개수 n이 주어진다. (1 ≤ n ≤ 106)
- 다음 n개 줄에 두 정수 starti와 lengthi가 주어진다. (0 ≤ starti < lengthi−1; 1 ≤ starti + lengthi ≤ lengthi−1)
출력
연속된 substring() 연산을 모두 수행한 뒤의 문자열을 출력한다.