給你一個長度為 $N$ 的正整數數列 $(A_1, A_2, A_3, ... , A_N)$,定義 $\text{MIN(S)}$ 代表一個集合 $S$ 裡面最小的那個值,例如 : $\text{MIN}(1,3,4) = 1$,想請你求所有數對 $(l, r)$ 符合 $1 ≤ l ≤ r ≤ N$ 的 $\text{MIN}(A_l, A_{l+1}, ... , A_r)$ 的總和,也就是請你求以下的東西 :
$\sum_{l=1}^N \sum_{r=l}^N \text{MIN}(A_l, A_{l+1}, ... , A_r)$
因為答案有點大,請模 $998244353$。
輸入第一行有個正整數 $N$,代表序列的長度。
接著一行有 $N$ 個正整數,兩個數中間以空格隔開,第 $i$ 個數代表 $A_i$。
輸出 $\sum_{l=1}^N \sum_{r=l}^N \text{MIN}(A_l, A_{l+1}, ... , A_r)\ \text{mod}\ 998244353$
3 1 3 2
10
10 3 1 4 1 5 9 2 6 5 3
107
範例輸入 # 1
根據輸入,$A = (1, 3, 2)$。
$(l, r) = (1, 1)$ 時,$\text{MIN}(1) = 1$ 。
$(l, r) = (1, 2)$ 時,$\text{MIN}(1, 3) = 1$ 。
$(l, r) = (1, 3)$ 時,$\text{MIN}(1, 3, 2) = 1$ 。
$(l, r) = (2, 2)$ 時,$\text{MIN}(3) = 3$ 。
$(l, r) = (2, 3)$ 時,$\text{MIN}(3, 2) = 2$ 。
$(l, r) = (3, 3)$ 時,$\text{MIN}(2) = 2$ 。
所求為 $ 1 + 1 + 1 + 3 + 2 +2 = 10$。
範例輸入 # 2
總共有 $55$ 組相異的 $(l,r)$,答案加起來為 $107$ 。
Authored by r1cky