CF2149E.Hidden Knowledge of the Ancients

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

在 Deepwoken 的世界中,存在着一件古老的神器——无限知识石板,上面刻有一串由 nn 个神秘符号组成的序列(每个符号为一个整数)。

传说,只有找到所有的神圣碎片,才能揭示神器真正的力量——神圣碎片指的是石板上所有正好包含 kk 个不同数字的连续片段,且它们的长度要在 ll 到 rr 之间(包含 ll 和 rr)。

形式化地说:给定长度为 nn 的序列 aa,以及整数 k,l,rk, l, r,你需要找出所有满足以下条件的边界 bb 与 cc 的数目:

  • 1≤b≤c≤n1 \leq b \leq c \leq n;
  • 元素 ab,ab+1,…,aca_b, a_{b+1},\dots,a_c 恰好包含 kk 个不同的数字;
  • l≤c−b+1≤rl \leq c-b+1 \leq r。

输入格式

每个测试用例包含多组数据。

第一行包含一个整数 tt(1≤t≤1041 \leq t \leq 10^4)——表示测试用例的数量。

接下来依次描述每组测试用例。

每组测试用例第一行包含四个整数 n,k,l,rn, k, l, r(1≤k≤n≤2⋅105,1≤l≤r≤n1 \leq k \leq n \leq 2 \cdot 10^5, 1 \leq l \leq r \leq n)。

第二行包含 nn 个整数 aia_i(1≤ai≤1091 \leq a_i \leq 10^9)——神秘符号序列。

保证所有测试用例中 nn 的总和不超过 2⋅1052 \cdot 10^5。

输出格式

对于每组测试用例,输出一个整数,占一行——满足条件的连续子数组的数量。

输入输出样例

  • 输入#1

    5
    1 1 1 1
    5
    5 2 2 3
    1 2 1 3 2
    6 3 1 6
    1 2 3 1 2 3
    4 1 1 2
    7 7 7 7
    7 3 2 4
    1 2 1 2 3 2 1

    输出#1

    1
    5
    10
    7
    5

说明/提示

在第一个测试用例中 a=[5]a=[5],只有一个子数组 [5][5],长度为 11,恰好包含 11 个不同的数字。

在第四个测试用例 a=[7,7,7,7]a=[7,7,7,7] 中,任意子数组都只有 11 个不同的数字。可能的子数组范围如下:

  • 长度为 11: [1,1][1,1]、[2,2][2,2]、[3,3][3,3]、[4,4][4,4]。
  • 长度为 22: [1,2][1,2]、[2,3][2,3]、[3,4][3,4]。

共 77 个。

在第五个测试用例 a=[1,2,1,2,3,2,1]a=[1,2,1,2,3,2,1] 中:

  • 长度为 22:所有子数组都只包含 22 个不同的数字。
  • 长度为 33: [3,5][3,5]、[5,7][5,7]。
  • 长度为 44: [2,5][2,5]、[3,6][3,6]、[4,7][4,7]。

共 55 个。

由 ChatGPT 5 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页