P11288 [COTS 2017] 模板 Z1
题目背景
译自 [Izborne Pripreme 2017 (Croatian IOI/CEOI Team Selection)](https://hsin.hr/pripreme2017/) D2T2。$\texttt{4s,0.5G}$。
题目描述
> **题目**(【模板】RMQ)。
>
> 给定整数序列 $a_1,a_2,\cdots,a_n$,值域为 $[0,h)$。
>
> 有 $m$ 次询问。第 $i$ 次询问给定 $l_i,r_i$,求出 $\displaystyle \max_{k\in [l_i,r_i]} \{a_k\}$。
给定 $n,m,h$,每个询问和对应的答案。求出一共有多少个可能的 $a$ 序列满足条件。只需要求出答案对 $(10^9+7)$ 取模后的结果。
输入格式
第一行,三个正整数 $n,m,h$;
接下来 $m$ 行,每行三个整数 $l_i,r_i,x_i$,表示 $\displaystyle \max_{k\in [l_i,r_i]} \{a_k\}=x_i$。
输出格式
输出一行一个整数,表示答案对 $(10^9+7)$ 取模后的结果。
说明/提示
#### 样例解释
样例 $1$ 解释:只有 $[1,0,0]$,$[1,0,1]$,$[1,0,2]$ 满足条件。
#### 数据范围
对于 $100\%$ 的数据,保证:
- $1\le n,m,h\le 10^6$;
- $1\le l_i\le r_i\le n$;
- $0\le x_i\lt h$。
| 子任务编号 | $n\le $ |得分 |
| :--: | :--: | :--: |
| $ 1 $ | $ 100 $ | $ 20 $ |
| $ 2 $ | $ 10^3 $ | $ 30 $ |
| $ 3 $ | $10^6$ | $ 50 $ |