luogu#P10174. 「OICon-02」Great Segments

「OICon-02」Great Segments

题目背景

upd:时间限制改为 400ms

题目描述

给定一个长度为 nn 的无重复元素序列 aa

对于一个区间 [l,r][l,r],我们定义它是好的,有以下条件:

  1. 定义一个序列 $b=\{ a_l,\max(a_l,a_{l+1}),\max(a_l,a_{l+1},a_{l+2}),\ ...\ ,\max(a_l,a_{l+1},\ ... \ ,a_r)\}$,将该序列进行去重操作后,该序列的长度不超过 kk 且大于 11
  2. max(al,al+1, ... ,ar)=ar\max(a_l,a_{l+1},\ ... \ ,a_r)=a_r

请你解决这样一个问题:对于每一个 i (1in)i \ (1 \le i \le n),有多少个好的区间 [l,r][l,r] 满足 lirl \le i \le r

输入格式

第一行两个整数 n,kn,k

第二行 nn 个整数,第 ii 个数表示 aia_i

输出格式

nn 行,每行一个整数,第 ii 行的数表示序列中有多少个好的区间 [l,r][l,r] 满足 lirl \le i \le r

4 2
1 3 2 4
1
2
2
2

提示

样例解释

对于样例 11,满足条件的区间有:

  1. [1,2][1,2]
  2. [2,4][2,4]
  3. [3,4][3,4]

故当 i=1,2,3,4i=1,2,3,4 时,分别有以下区间满足 lirl\leq i\leq r(根据上述的区间编号):

  1. 11 区间;
  2. 1,21,2 区间;
  3. 2,32,3 区间;
  4. 2,32,3 区间。

数据范围

本题采用捆绑测试。

Subtask\text{Subtask} 特殊性质 Score\text{Score}
11 n200n \le 200 55
22 n2000n\leq 2000 1010
33 {a}\{a\} 递增
44 k5k\leq 5 1212
55 k=nk=n 1313
66 n3×105n \le 3 \times 10^5 2020
77 无特殊限制 3030

对于 100%100\% 的数据:1kn1061\leq k\leq n\leq 10^60ai1090\leq a_i\leq 10^9