#P6341. 区间 or 和

区间 or 和

题目描述

给定一个序列,支持单点修改,询问满足区间 or\texttt{or} 和 ≥\ge 一个数的区间的最短可能长度。无解输出 -1。

输入格式

第一行为 n,qn,q。表示序列长度,操作个数。
接下来一行 nn 个数,表示 a1,a2,…,ana_1, a_2, \ldots, a_n。
接下来 qq 行,每行形如:
1 i x1\ i\ x 表示将 aia_{i} 修改为 xx;
2 k2\ k 表示询问 $\min \{r-l+1|a_{l}\ \texttt{or}\ a_{l+1}\ldots\texttt{or}\ a_{r}\ge k\}$。

输出格式

对于每个询问,输出一行,表示答案。无解输出 -1。

2 3
0 2
2 3
1 1 1
2 3
-1
2

数据范围与提示

对于 100%100\% 的数据,0≤ai,k≤2300\le a_{i}, k \le 2^{30} ,n,q≤50000n,q \le 50000。