传统题 1000ms 256MiB

围栏

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

问题描述

老师决定给他的大别野安装一道新的围栏。这道围栏由 nn 块大小相同的木板排成一列组成。老师望着这些木板,突然灵光一闪——他要用自己收藏的 mm 种不同颜色的油漆来粉刷这道围栏。

老师是一个有原则的人。他希望围栏的粉刷方案既美观又独特,因此制定了以下规则:

  1. 单色原则:每块木板必须被涂成一种颜色。
  2. 双色限制:整个围栏只能使用恰好两种不同的颜色。
  3. 连续涂色:相同颜色的木板必须形成一个连续的序列。换句话说,对于任意两块颜色相同的木板,它们之间的所有木板也必须涂成相同的颜色。

老师的油漆库存有限——第 ii 种颜色的油漆最多只能涂 aia_i 块木板。他不想再购买额外的油漆,因此需要在现有条件下计算出所有可能的粉刷方案。

你的任务是帮助老师计算出满足上述所有条件的粉刷方案的总数。

两种方案被视为不同:当且仅当存在至少一块木板在两种方案中被涂成了不同的颜色。

输入格式

第一行输入一个整数 tt1t1041 \leq t \leq 10^4 ),表示测试用例的数量。

每个测试用例的第一行包含两个整数 nnmm2n,m21052 \leq n, m \leq 2 \cdot 10^5 ),分别表示围栏的木板数量和油漆颜色种类数。

每个测试用例的第二行包含 mm 个整数 a1,a2,,ama_1, a_2, \ldots, a_m1ain1 \leq a_i \leq n ),其中 aia_i 表示第 ii 种颜色的油漆最多能涂的木板数量。

输出格式

所有测试用例的 nn 之和不超过 21052 \cdot 10^5

所有测试用例的 mm 之和不超过 21052 \cdot 10^5

样例输入

3
5 2
2 4
5 2
3 4
12 3
5 9 8

样例输出

4
6
22

说明

第一个测试用例:
共有 4 种粉刷方案(以下为木板从左到右的颜色序列):

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

CSP-J/S 训练(第八场)

未参加
状态
已结束
规则
IOI
题目
6
开始于
2025-8-19 17:15
结束于
2025-8-30 9:15
持续时间
256 小时
主持人
参赛人数
7