아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Sumex

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

요약
배열과 q개의 구간 [l, r]이 주어질 때, 각 구간 안 모든 부분 배열의 mex 합을 구합니다.
난이도

어려움10점 중 9점

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

문제

길이 nn의 수열 a_1,…,a_na\_1,\dots , a\_n과 서로 독립적인 qq개의 질의가 주어진다. 각 질의에서는 두 정수 ll과 rr이 주어진다. 수열 a_l,a_l+1,…,a_ra\_l , a\_{l+1}, \dots , a\_r을 고려한다. l≤i≤j≤rl \le i \le j \le r을 만족하는 모든 a_i,a_i+1,…,a_ja\_i , a\_{i+1}, \dots , a\_j 형태의 부분 수열에 대해 최소 배제 원소의 합을 구하라.

수열의 최소 배제 원소는 수열에 나타나지 않는 가장 작은 음이 아닌 정수이다. 예를 들어 수열 0, 1, 4, 2의 최소 배제 원소는 3이고, 수열 1, 2, 3, 4의 최소 배제 원소는 0이다.

입력

첫 줄에 정수 nn과 qq가 주어진다. 둘째 줄에는 초기 수열을 나타내는 정수 nn개 a_1,a_2,…,a_na\_1, a\_2, \dots , a\_n이 주어진다. 이어지는 qq개의 줄에는 각각 질의를 나타내는 두 정수 ll과 rr이 주어진다.

출력

qq개 질의의 답을 입력 순서대로 한 줄에 하나씩 출력한다.

제한

  • 1≤n,q≤2×1051 \le n, q \le 2 \times 10^5
  • 0≤a_i≤n0 \le a\_i \le n
  • 1≤l≤r≤n1 \le l \le r \le n

힌트

샘플의 세 질의에 대한 답은 순서대로 33, 77, 3939이다. 각 질의마다 질의 범위 안의 모든 부분 수열에 대한 최소 배제 원소가 나열되어 있다.

예제1

  1. 예제 1

    입력
    6 3
    0 1 2 0 1 3
    1 2
    3 5
    1 6
    
    예상 출력
    3
    7
    39