题目描述
$n$ 个小根堆,第 $i$ 个堆只含一个数 $v_i$。支持 $m$ 次操作:操作一,把第 $a,b$ 个数所在的两个堆合并成一个新堆(若已在同一堆则忽略);操作二,输出第 $a$ 个数所在堆的最小值并删除它(保证该堆非空)。请用左偏树(可并堆)。
输入格式
第一行两个整数 $n,m$;第二行 $n$ 个整数 $v_i$;接下来 $m$ 行每行形如 1 a b 或 2 a。
输出格式
对每个操作二输出一行一个整数。
数据范围
$$1 \le n,m \le 10^5,\ 0 \le v_i \le 10^9$$