题库练习 Almost Increasing Subsequence
← 上一题 下一题 →

A15957 | Almost Increasing Subsequence

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

A sequence is almost-increasing if it does not contain three consecutive elements $x, y, z$ such that $x\ge y\ge z$ .

You are given an array $a_1, a_2, \dots, a_n$ and $q$ queries.

Each query consists of two integers $1\le l\le r\le n$ . For each query, find the length of the longest almost-increasing subsequence of the subarray $a_l, a_{l+1}, \dots, a_r$ .

A subsequence is a sequence that can be derived from the given sequence by deleting zero or more elements without changing the order of the remaining elements.

输入格式

The first line of input contains two integers, $n$ and $q$ ( $1 \leq n, q \leq 200\,000$ ) — the length of the array $a$ and the number of queries.

The second line contains $n$ integers $a_1, a_2, \dots, a_n$ ( $1 \leq a_i \leq 10^9$ ) — the values of the array $a$ .

Each of the next $q$ lines contains the description of a query. Each line contains two integers $l$ and $r$ ( $1 \leq l \leq r \leq n$ ) — the query is about the subarray $a_l, a_{l+1}, \dots, a_r$ .

输出格式

For each of the $q$ queries, print a line containing the length of the longest almost-increasing subsequence of the subarray $a_l, a_{l+1}, \dots, a_r$ .

输入输出样例

输入 #1
9 8
1 2 4 3 3 5 6 2 1
1 3
1 4
2 5
6 6
3 7
7 8
1 8
8 8
输出 #1
3
4
3
1
4
2
7
1
C++ 编辑器
输入
输出