P8955 「VUSC」Card Tricks
题目背景
**upd 2023.1.17 数据已加强。**
**upd 2023.10.18 空间限制调整为 100 MiB。**
Bessie 正在玩一场卡牌游戏!
这个游戏有一些~~神秘的~~规则。Bessie 需要用一些编程技巧,加快计算。
题目描述
牌堆可以看成一个长度为 $N$ 的数列,下标为 $i$ 的位置值为 $a_i$。$(1\le i\le N)$
有 $Q$ 次操作,每次操作给定 $l_i,r_i,v_i$,$\forall l_i\le j \le r_i,a_j\gets a_j \lor v_i$。
其中 $\lor$ 表示按位或操作,即 C++ 中的 `|`。
对于 $i=1,2,\dots,N$,求出在哪一次操作后,$a_i$ **首次严格大于** $P$,其中 $P$ 为一给定常数。
数据保证在初始情况下,$P\ge\max\{a_i\}$。
输入格式
无
输出格式
无
说明/提示
#### 样例 #1 解释
第一次操作后的数列为 $1,2,3,4,5$。
第二次操作后的数列为 $11,2,3,4,5$。
第三次操作后的数列为 $11,6,7,4,5$。
……
最终的数列为 $11,14,15,4,23$。
---
#### 数据范围
全部数据满足:$1\le N,Q \le 10^6$,$1\le l_i\le r_i \le N$,$1\le a_i,v_i,P\le 10^9$。
测试点 $1\sim2$ 另满足 $1\le N,Q\le 10^3$。
测试点 $3$ 另满足 $l_i=r_i$。
测试点 $4$ 另满足 $l_i=1,r_i=N$。
测试点 $5\sim10$ 无额外限制。
**本题数据规模较大,请注意常数优化。**