만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

호텔 방

면접 대비

시간 제한1초메모리 제한1024 MB

요약
호텔 방 n개에서 예약이 들어올 때마다 해당 방을 잠그고, 질의로 주어진 구간에서 아직 비어 있는 방의 개수를 구합니다.
난이도

쉬움10점 중 3점

유형
세그먼트 트리, 배열
정답자
아직 제출이 없습니다

문제

UCF Programming Team이 여행할 때, 코치들은 서로 가까운 호텔 방을 구하고 싶어 합니다. 이 호텔의 방은 1번부터 n번까지 번호가 매겨져 있고, 일직선으로 늘어서 있습니다. 2번 방은 1번 방 옆에, 3번 방은 2번 방 옆에 있으며, 이런 식입니다. 그래서 서로 가까운 빈 방을 많이 찾기가 쉽습니다.

방 예약 현황이 주어졌을 때, 대규모 단체인 UCF Programming Team을 수용할 수 있는 방의 여유 상황을 구하시오.

입력

첫 줄에는 두 정수 nn (1≤n≤5×1051 \le n \le 5 \times 10^5)과 tt (1≤t≤1051 \le t \le 10^5)가 주어집니다. nn은 호텔 방의 개수이고, tt는 거래의 개수입니다. 이어지는 tt개의 줄에 각각 거래가 하나씩 주어집니다. 거래는 두 종류입니다.

  • 방 예약: 줄의 첫 글자는 R이며, 그 뒤에 공백 하나와 유효한 방 번호가 옵니다. 이 거래는 주어진 방을 예약합니다. 해당 방은 이미 예약되어 있지 않습니다.
  • 단체 빈 방 조회: 줄의 첫 글자는 A이며, 그 뒤에 공백 하나, 유효한 시작 방 번호, 공백 하나, 유효한 끝 방 번호가 옵니다. 이 거래는 주어진 범위에서 빈 방이 몇 개인지 묻습니다. 끝 방 번호는 시작 방 번호보다 작지 않습니다.

출력

방 예약 거래에는 출력이 없습니다. 단체 빈 방 조회 거래마다, 요청한 범위에 있는 빈 방의 총 개수를 한 줄에 출력하시오.

예제1

  1. 예제 1

    입력
    20 8
    A 5 10
    R 6
    R 9
    R 3
    A 5 10
    R 13
    R 18
    A 1 20
    
    예상 출력
    6
    4
    15