RiseOJ는 solved.ac와 제휴 관계가 없습니다. 티어 아이콘 © solved.ac. solved.ac
포럼
R00043

미노타우르스의 미궁

Platinum V 플래티넘 V
난이도
1s
시간 제한
256MB
메모리 제한
2
맞았습니다!!
2
제출 수
100.0%
정답률
레이팅

의견: 0

설명

오래전, 미노타우르스가 갇혀 있던 거대한 미궁에는 수많은 봉인석이 일렬로 놓인 통로들이 존재했다.

라이즈는 미궁의 중심부로 향하기 위해 여러 통로를 조사하고 있다.
각 통로에는 1번부터 \(N\)번까지 번호가 붙은 봉인석이 일렬로 놓여 있으며, \(i\)번 봉인석의 마력 높이는 \(H_i\)이다.

라이즈는 어떤 구간 \([l, r]\)의 통로를 조사할 때, \(l\)번 봉인석의 왼쪽에서 오른쪽 방향으로 마법의 빛을 쏜다.

마법의 빛은 다음 규칙에 따라 봉인석에 닿는다.

첫 번째 봉인석 \(l\)은 항상 빛을 받는다.

그 이후의 봉인석 \(i\)는, 구간 \([l, i-1]\)에 있는 모든 봉인석보다 마력 높이가 클 때만 빛을 받는다.

즉, 라이즈가 왼쪽에서 오른쪽으로 바라볼 때, 지금까지 본 모든 봉인석보다 더 높은 봉인석만 빛을 받는다.

라이즈는 \(Q\)개의 통로 구간을 조사하려고 한다.
각 조사마다 구간 \([l, r]\)에서 마법의 빛을 받는 봉인석의 개수를 구하시오.

제약

\(1 ≤ N ≤ 200\,000\)
\(1 ≤ Q ≤ 200\,000\)
\(1 ≤ H_i ≤ 1\,000\,000\,000\)
\(1 ≤ l ≤ r ≤ N\)

입력 형식

첫째 줄에 봉인석의 개수 \(N\)과 조사 횟수 \(Q\)가 주어진다.

둘째 줄에 각 봉인석의 마력 높이 \(H_1, H_2, \dots, H_N\)이 공백으로 구분되어 주어진다.

셋째 줄부터 \(Q\)개의 줄에 걸쳐 두 정수 \(l, r\)이 주어진다.

출력 형식

각 조사마다 구간 \([l, r]\)에서 마법의 빛을 받는 봉인석의 개수를 한 줄에 하나씩 출력한다.

예제 1
입력
8 5
3 1 4 4 2 6 5 7
1 8
2 5
3 4
5 8
6 7
출력
4
2
1
3
1
문제 정보

anthony0506 작성

출처 anthony0506

평가 및 의견

미노타우르스의 미궁

개요
출제자 난이도 Platinum V 플래티넘 V 의견 0 / 50 공개 집계 (커뮤니티 난이도, 주요 주제, 품질)는 의견이 충분히 모이면 공개됩니다.

Log in to rate problems.

개별 의견

아직 의견이 없습니다. 자격이 된다면 위 양식에서 가장 먼저 평가해 보세요.

풀이 제출

미노타우르스의 미궁

게스트로 둘러보고 있습니다. 로그인하면 풀이를 제출하고 진행 상황을 확인할 수 있습니다. 로그인하고 제출하기
공개
C++20 Tab 들여쓰기 · Ctrl+/ 주석 토글 · Enter 자동 들여쓰기
1 1 1 0 공백: 4 · UTF-8