#4468. K 个不同整数的子数组

K 个不同整数的子数组

题目描述

给定一个正整数数组 numsnums和一个整数 kk,返回 numsnums「好子数组」 的数目。

如果 numsnums 的某个子数组中不同整数的个数恰好为 kk,则称 numsnums 的这个连续、不一定不同的子数组为 「好子数组 」

例如,[1,2,3,1,2][1,2,3,1,2] 中有 33 个不同的整数:1122,以及 33

子数组 是数组的 连续 部分。

输入格式

第一行两个空格隔开的整数 nnkk

第二行 nn 个空格隔开的正整数,表示数组。

输出格式

一行一个数,表示答案。

样例

样例 1:

5 2
1 2 1 2 3
7

解释:恰好由 2 个不同整数组成的子数组:[1,2], [2,1], [1,2], [2,3], [1,2,1], [2,1,2], [1,2,1,2].

样例 2:

5 3
1 2 1 3 4
3

解释:恰好由 3 个不同整数组成的子数组:[1,2,1,3], [2,1,3], [1,3,4].

提示:

  • 1<=n<=21041 <= n <= 2 * 10^4
  • 1<=nums[i],k<=n1 <= nums[i], k <= n
}