P8810 [蓝桥杯 2022 国 C] 数组个数

题目描述

  小蓝有一个长度为 $n$ 的数组 $B = (b_0,b_1,\cdots,b_{n−1})$,数组 $B$ 是由另一个长度为 $n$ 的环形数组 $A = (a_0,a_1,\cdots,a_{n−1})$ 经过一次相邻最大化操作得到的,其中 $a_i$ 与 $a_{i+1}$ 相邻,$a_0$ 与 $a_{n−1}$ 相邻。 形式化描述为: $$ b_i= \begin{cases} \max\{a_{n-1},a_0,a_1\}& i=0\\ \max\{a_{i-1},a_i,a_{i+1}\}& 0

输入格式

输入的第一行包含一个整数 $n$,表示数组长度。 第二行包含 $n$ 个整数 $b_0,b_1,\cdots,b_{n−1}$,相邻两个整数之间用一个空格分隔。

输出格式

输出一行包含一个整数表示答案,答案可能很大,请输出答案除以 $1000000007$(即 $10^9+7$)后的余数。

说明/提示

**【样例说明】** 可能的 $A$ 数组有 $7$ 个 :$(6,0,0,1,8)$、$(6,0,1,0,8)$、$(6,0,1,1,8)$、$(6,1,0,0,8)$、$(6,1,0,1,8)$、$(6,1,1,0,8)$、$(6,1,1,1,8)$。 【评测用例规模与约定】 对于 $30\%$ 的评测用例,$3≤n≤10$; 对于 $60\%$ 的评测用例,$3≤n≤100$; 对于所有评测用例,$3 ≤ n ≤ 1000$,$0 ≤ b_i ≤ 10$。 蓝桥杯 2022 国赛 C 组 G 题。