AT_maximum_cup_2023_e 小大小大……
题目描述
给定一个 $ (1,2,\ldots,N) $ 的排列 $ P=(p_1,p_2,\ldots,p_N) $。
将 $ P $ 分割成 $ 1 $ 个或多个非空连续子序列 $ X_1,X_2,\ldots,X_K $,并按如下方式定义 $ (m_1,m_2,\ldots,m_K) $:
- 如果 $ i $ 是奇数,则 $ m_i $ 是 $ X_i $ 中的最小值;
- 如果 $ i $ 是偶数,则 $ m_i $ 是 $ X_i $ 中的最大值。
请计算作为 $ (m_1,m_2,\ldots,m_K) $ 可能出现的序列有多少种,输出答案对 $ 10^9+7 $ 取余后的结果。
输入格式
输入以如下格式经标准输入给出:
> $ N $ $ p_1 $ $ p_2 $ $ \ldots $ $ p_N $
输出格式
请输出答案。
说明/提示
### 样例解释 1
将 $ P $ 的分割方法共有 $ 4 $ 种,每种方法对应的 $ (m_1,m_2,\ldots,m_K) $ 如下:
- 不分割,整个为 $ (1,2,3) $。$\min(1,2,3)= 1$,故序列为 $ (1) $。
- 分割为 $ (1),(2,3) $,$\min(1)=1, \max(2,3)=3$,故序列为 $ (1,3) $。
- 分割为 $ (1,2),(3) $,$\min(1,2)=1, \max(3)=3$,故序列为 $ (1,3) $。
- 分割为 $ (1),(2),(3) $,$\min(1)=1, \max(2)=2, \min(3)=3$,故序列为 $ (1,2,3) $。
因此,$ (m_1,m_2,\ldots,m_K) $ 可能出现的序列有 $ (1), (1,3), (1,2,3) $ 共 $ 3 $ 种。
### 数据范围
- $ 1 \leq N \leq 3 \times 10^5 $
- $ 1 \leq p_i \leq N $
- 若 $ i \ne j $,则 $ p_i \ne p_j $
- 输入均为整数。
由 ChatGPT 5 翻译