#Lutece2762. FREE的手办

FREE的手办

Migrated from Lutece 2762 FREE的手办

All parts of this problem, including description, images, samples, data and checker, might be broken. If you find bugs in this problem, please contact the admins.

Description

假设 FREE 有 nn 个手办,小手办们排成一排,每个手办按照入手批次从第 11 个到第 nn 个被贴上了一个标号 aia_i。假设一共 mm 次操作,两种操作分别为:

11 aa bb kk 将数列 [a,b][a, b] 这个区间中所有比 kk 小的数改为 kk
22 aa bb kk xx 查询 [a,b][a, b] 的区间中比 kk 小的最小的 xx 个数。

Input

第一行为 nn,表示手办总数。
接下来一行 nn 个数 a1,a2,,ana_1, a_2, \ldots ,a_naia_i表示第 ii 个手办的标号。
接下来一行为 mm ,表示总操作数。
接下来 mm 行,格式见「题目描述」。

Output

对于每次查询,输出一行 xx 个数,每个数中间以空格间隔,按从小到大顺序排列;如果区间内小于 kk 的数不足 xx 个,输出 1-1

Samples

3
1 2 3
4
1 1 2 2
2 1 3 1 3
2 1 3 2 1
2 1 3 3 2
-1
-1
2 2

Constraints

1n5×1051\leq n \leq 5 \times 10 ^ 5
1a1091\leq a \leq 10 ^ 9
1k1091\leq k \leq 10 ^ 9
1m5×1051\leq m \leq 5 \times 10 ^ 5
1x105,x5×1061\leq x \leq 10 ^ 5, \sum x \leq 5 \times 10 ^ 6

Resources

2022 UESTC ICPC Training for Data Structures