이진 수열과 쿼리
시간 제한3초메모리 제한1024 MB
이진 수열에서 값을 바꾸는 연산과 구간 질의가 주어집니다. 질의 구간 안에서 0의 최장 연속 길이가 x, 1의 최장 연속 길이가 y인 부분 구간 [s, e]를 찾고, 없으면 -1을 출력합니다.
문제
길이가 인 이진 수열 이 주어진다. 또한 두 가지 종류의 쿼리가 개 주어진다.
-
: 를 로 바꾼다.
-
: 다음 조건을 모두 만족하는 를 하나 찾는다. 그러한 구간이 없으면 없다고 보고한다.
- 에서 연속된 0의 최대 개수가 이다.
- 에서 연속된 1의 최대 개수가 이다.
입력
첫 줄에는 정수 과 가 주어진다 ().
둘째 줄에는 길이가 인 이진 문자열 이 주어진다.
이어서 개의 줄이 주어지며, 각 줄은 다음 중 하나의 형식이다.
- 종류 1: (, )
- 종류 2: (, )
출력
종류 2 쿼리마다 조건을 만족하는 구간 가 있으면 와 를 공백 하나로 구분해 출력한다. 없으면 을 출력한다.
답이 여러 개이면 그중 아무거나 출력해도 된다.