P1011何以为我upline

时间限制 1000 ms内存限制 512 MiB通过率 —
显示算法标签树状数组 · 计数

【题目描述】

Ehundategh 清点了 Gioush 大队中 nn 个成员的信息,这 nn 个成员已经按照年龄从小到大完成了排序,其中年龄第 ii 小的成员有一个能力值 aia_i

普适经验来讲,一般年龄越大的人能力就会越强,于是,对于年龄分别是第 i,j,ki,j,k 小的 33 个不同的成员,其中 i<j<ki<j<k,若满足 ai<aj<aka_i< a_j< a_k,则称这三个人能组成一个经验能力子列,两个经验能力子列不同当且仅当存在至少一个成员不同。

现在,Ehundategh 想知道,在这 nn 个成员中,一共能组成多少个不同的经验能力子列

【输入格式】

从文件 upline.in\textbf{\textit{upline.in}} 中读入数据。

输入的第一行包含一个正整数 nn,表示成员个数。

输入的第二行包含 nn 个正整数,第 ii 个正整数 aia_i 表示年龄第 ii 小的成员的能力值。

【输出格式】

输出到文件 upline.out\textbf{\textit{upline.out}} 中。

输出一行一个非负整数,表示不同的经验能力子列个数。

【样例 1 输入】

42 1 3 4

【样例 1 输出】

2

【说明/提示】

【样例 1 解释】

满足条件的经验能力子列为 (1,3,4)(1,3,4)(2,3,4)(2,3,4),因此答案为 22

【样例 2】

见选手目录下的 upline/upline2.in\textbf{\textit{upline/upline2.in}}upline/upline2.ans\textbf{\textit{upline/upline2.ans}}

该组样例符合测试点 161\sim 6 的数据范围。

【样例 3】

见选手目录下的 upline/upline3.in\textbf{\textit{upline/upline3.in}}upline/upline3.ans\textbf{\textit{upline/upline3.ans}}

该组样例符合测试点 7127\sim 12 的数据范围。

【样例 4】

见选手目录下的 upline/upline4.in\textbf{\textit{upline/upline4.in}}upline/upline4.ans\textbf{\textit{upline/upline4.ans}}

该组样例符合测试点 132013\sim 20 的数据范围。

【数据范围】

对于 100%100\% 的数据,保证 1n2×1051\leq n\leq 2\times 10^51ai1051\leq a_i\leq 10^5

测试点编号nn
161\sim 6300\leq 300
7127\sim 122×103\leq 2\times 10^3
132013\sim 202×105\leq 2\times 10^5

【题解】

已公开 1 篇题解,官方题解会优先显示。

查看题解