#P14753. 森

    ID: 16483 远端评测题 2000ms 512MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>线段树树状数组2025O2优化单调栈高校校赛

题目背景

《Forest》------ Kirara Magic,Shion

不会做就去听听歌吧,虽然听了也不会做,但至少听了一首歌,血赚!

在《Forest》的歌声中,小魔女 Kirara Magic 迷失在了一片神秘的魔法森林。这片森林由一系列魔法节点组成,每个节点上绽放着蕴含不同魔法能量的花朵。“窓の外は 広く晴れた空 いつからか 森から出れないな”(窗外是广阔晴朗的天空,不知从何时起,无法走出森林)。Kirara 发现自己被困在这里,无法离开。

为了寻找逃脱的方法,她回忆起与某人的约定,这个约定指引她前往“星が辿りつく場所へ”(星星到达的地方)。但森林中的魔法能量分布复杂,她必须找到一种安全路径。她与花秘密地对话,仿佛花朵能告诉她魔法的秘密。

题目描述

Kirara 发现,如果存在一段连续的魔法区间 [l,r][l, r],其中魔法能量的最小值大于她起点 axa_x 和终点 aya_y 的能量,那么她就能安全地从 xx 移动到 yy,中间受到保护。这段区间就像“風に包まれてく”(被风包围)一样,提供庇护。否则,她可能会被森林中的魔法吞噬。

现在,Kirara 需要你的帮助:给定森林中 nn 个节点的魔法能量 aia_i,找出所有满足条件的四元组 (x,l,r,y)(x, l, r, y),并统计其数量,其中 1x<lr<yn1 \le x<l \le r<y \le n,且 aa 的区间 [l,r][l, r] 上的最小魔法能量大于你所选择的起点 axa_x 和你所选择的终点 aya_y 的能量。这样,她就能识别所有安全路径,踏上“果てしのない旅”(无尽的旅程),寻找逃脱的希望。

由于答案可能很大,你只需要给出满足条件的四元组数量对 998244353998244353 取模的值。

输入格式

第一行一个整数 n (3n3×105)n\ (3\le n\le 3\times10^5),表示魔法结点的数量。

第二行 nn 个整数,第 ii 个整数为 ai (1ain)a_i\ (1\le a_i\le n),表示第 ii 个节点的魔法能量。

输出格式

一个非负整数,表示满足条件的四元组数量。答案对 998244353998244353 取模。

5
3 5 4 3 2

7

10
1 1 1 2 1 1 1 2 1 1

27

提示

对于第一组输入样例,一共有 77 个四元组满足条件:(1,2,2,3)(1, 2, 2, 3)(1,2,2,4)(1, 2, 2, 4)(1,2,2,5)(1, 2, 2, 5)(1,2,3,4)(1, 2, 3, 4)(1,2,3,5)(1, 2, 3, 5)(1,3,3,4)(1, 3, 3, 4)(1,3,3,5)(1, 3, 3, 5)

帮助 Kirara 找到所有这样的 (x,l,r,y)(x, l, r, y) 路径,让她实现约定,逃离森林吧!