Problem2094--Kth查询

2094: Kth查询

Time Limit: 1 Sec  Memory Limit: 512 MB
Submit: 86  Solved: 2
[Submit] [Status] [Web Board] [Creator:]

Description

给定一个 1~n 的排列 a1,a2,a3,...,an 和一个整数 k,lindongli2004 想知道所有满足 rl+1k 的区间 [l,r] 里的数中第 k 大的元素,输出它们的和。

Input

第一行两个整数 n,k,

接下来一行 n 个整数 a1,a2,a3,...,an,保证为一个 1~n 的排列。

Output

一行一个整数表示答案

Sample Input Copy

5 2
1 2 3 4 5

Sample Output Copy

30

HINT

样例解释:

满足条件的区间中,[1,5],[2,5],[3,5],[4,5] 的第二大为 4,区间 [1,4],[2,4],[3,4] 的第二大为 3,区间 [1,3],[2,3] 的第二大为 2,区间 [1,2] 的第二大为 1。

综上所述,总和为 4×4+3×3+2×2+1=30。

数据范围:

共 10 组数据

测试点 1,2 满足 1n100

测试点 3,4 满足 1n1000

测试点 5,6 满足 k=1

测试点 7,8 满足 1n50000

测试点 9,10 满足 1n5×105,k50

Source/Category