AT_past202107_l たくさんの最小値

题目描述

维护一个长为 $n$ 的数组 $a$。对其进行 $q$ 次操作。第 $i$ 次操作输入三个整数 $t_i,x_i,y_i$。按如下规则操作: - $t_i=1$ 时:将 $a_{x_i}$ 的值改为 $y_i$。此时,$1 \le x_i \le n$,$0 \le y_i \le 10^9$。 - $t_i=2$ 时:找出 $[x_i,y_i]$ 区间内的最小值,将其记为 $p$,输出所有满足以下两个条件的整数 $j$: > - $x_i \le j \le y_i$; > > - $a_j=p$。 - 此时,$1 \le x_i \le y_i \le n$。

输入格式

第一行为数组长度 $n$ 和操作次数 $q$。$1 \le n,q \le 2 \times 10^5$。 第二行为 $n$ 个整数,表示数组 $a$。$0\le a_i \le 10^9$。

输出格式

对于每个 $t_i=2$ 的操作,先输出满足条件的 $j$ 的个数 $m$,再按照递增的顺序输出所有满足条件的 $j$。相邻两个数之间以单个空格隔开,输出完要换行。保证满足条件的 $j$ 的总个数不超过 $2 \times 10^5$。

说明/提示

### 注意 この問題に対する言及は、2021/7/17 18:00 JST まで禁止されています。言及がなされた場合、賠償が請求される可能性があります。 試験後に総合得点や認定級を公表するのは構いませんが、どの問題が解けたかなどの情報は発信しないようにお願いします。 ### 制約 - $ 1\ \leq\ N,\ Q\ \leq\ 2\ \times\ 10^5 $ - $ 0\ \leq\ A_i\ \leq\ 10^9 $ - $ T_i $ は $ 1 $ または $ 2 $ - $ T_i=1 $ ならば、$ 1\ \leq\ X_i\ \leq\ N $ かつ $ 0\ \leq\ Y_i\ \leq\ 10^9 $ - $ T_i=2 $ ならば、$ 1\ \leq\ X_i\ \leq\ Y_i\ \leq\ N $ - 入力は全て整数 - 列挙すべき $ j $ の個数の総和は $ 2\ \times\ 10^5 $ を超えない