P7809 [JRKSJ R2] 01 序列
题目描述
给你一个长度为 $n$ 的 $01$ 序列 $a_{1\sim n}$,接下来有两种询问共 $m$ 次:
- `1 l r`,表示询问 $l$ 到 $r$ 区间的最长不下降子序列的长度。
- `2 l r`,表示询问 $l$ 到 $r$ 区间的最长上升子序列的长度。
输入格式
输入 $m+2$ 行。\
第 $1$ 行两个正整数 $n,m$。\
第 $2$ 行 $n$ 个数字 $0$ 或 $1$ 代表序列 $a_{1\sim n}$。\
接下来 $m$ 行每行三个正整数表示一次询问,格式如上。
输出格式
输出 $m$ 行。\
对于每一次询问求出答案并输出。
说明/提示
本题采用捆绑测试。
| $\text{Subtask}$ | $n\le$ | $m\le$ | 特殊性质 | 分值 |
| :-----------: | :-----------: | :-----------: | :-----------: | :-----------: |
| $\text{1}$ | $10^6$ | $10^6$ | 所有 $a_i$ 均相等 | $5$ |
| $\text{2}$ | $10^3$ | $10^3$ | 无 | $10$ |
| $\text{3}$ | $10^4$ | $10^4$ | 无 | $15$ |
| $\text{4}$ | $10^5$ | $10^5$ | 无 | $30$ |
| $\text{5}$ | $10^6$ | $5\times10^6$ | 无 | $40$ |
| $\text{6}$ | $10^6$ | $5\times10^6$ | hack 数据 | $0$ |
对于 $100\%$ 的数据,$1\le n\le 10^6$,$1\le m\le 5\times10^6$,$0\le a_i\le 1$。
本题输入输出量极大,请使用较为快速的输入输出方法。
#### 样例解释:
对于第一个询问,满足的序列有:$\{0,1,1,1,1\},\{0,0,0,0,1\}$。\
对于第二个询问,满足的序列有:$\{0,1\}$。\
对于第三个询问,满足的序列有:$\{0,0\},\{0,1\},\{1,1\}$。\
对于第四个询问,满足的序列有:$\{0\},\{1\}$。
$\text{Upd 2021.8.16}$:增加两组 Hack 数据。