309790: CF1736C1. Good Subarrays (Easy Version)

Memory Limit:256 MB Time Limit:1 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Good Subarrays (Easy Version)

题意翻译

定义一个序列是好的,当且仅当序列在 $\left[l,r\right]$ 中,对于任意的 $i$,都有 $a_i\ge i-l+1$。求在给定的含有 $n$ 个数的数列 $a$ 中,有多少个子序列是好的。

题目描述

This is the easy version of this problem. In this version, we do not have queries. Note that we have multiple test cases in this version. You can make hacks only if both versions of the problem are solved. An array $ b $ of length $ m $ is good if for all $ i $ the $ i $ -th element is greater than or equal to $ i $ . In other words, $ b $ is good if and only if $ b_i \geq i $ for all $ i $ ( $ 1 \leq i \leq m $ ). You are given an array $ a $ consisting of $ n $ positive integers. Find the number of pairs of indices $ (l, r) $ , where $ 1 \le l \le r \le n $ , such that the array $ [a_l, a_{l+1}, \ldots, a_r] $ is good.

输入输出格式

输入格式


Each test contains multiple test cases. The first line contains the number of test cases $ t $ ( $ 1 \leq t \leq 2 \cdot 10^5 $ ). Description of the test cases follows. The first line of each test case contains an integer $ n $ ( $ 1 \leq n \leq 2 \cdot 10^5 $ ), the length of the array $ a $ . The second line of each test case contains $ n $ space-separated integers $ a_1,a_2,\ldots,a_n $ ( $ 1 \leq a_i \leq n $ ), representing the array $ a $ . It is guaranteed that the sum of $ n $ over all test cases does not exceed $ 2 \cdot 10^5 $ .

输出格式


For each test case, print the number of suitable pairs of indices.

输入输出样例

输入样例 #1

3
3
1 2 3
3
1 1 1
4
2 1 4 3

输出样例 #1

6
3
7

说明

In the first test case, all subarrays of $ a $ are good, so all pairs are suitable. In the second test case, the pairs $ (1, 1) $ , $ (2, 2) $ , and $ (3, 3) $ are suitable. For example, when $ (l, r) = (1, 2) $ , the array $ b=[1,1] $ is not good because $ b_2 < 2 $ .

Input

题意翻译

定义一个序列是好的,当且仅当序列在 $\left[l,r\right]$ 中,对于任意的 $i$,都有 $a_i\ge i-l+1$。求在给定的含有 $n$ 个数的数列 $a$ 中,有多少个子序列是好的。

Output

**题目大意**:

定义一个数组是好的,当且仅当这个数组在 $[l, r]$ 范围内,对于任意的 $i$ ,都有 $a_i \ge i - l + 1$。求在给定的含有 $n$ 个数的数组 $a$ 中,有多少个子数组是好的。

**输入输出格式**:

**输入格式**:
- 每个测试包含多个测试用例。第一行包含测试用例的数量 $t$($1 \le t \le 2 \times 10^5$)。
- 每个测试用例的第一行包含一个整数 $n$($1 \le n \le 2 \times 10^5$),表示数组 $a$ 的长度。
- 每个测试用例的第二行包含 $n$ 个空格分隔的整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le n$),代表数组 $a$。
- 保证所有测试用例的 $n$ 之和不超过 $2 \times 10^5$。

**输出格式**:
- 对于每个测试用例,输出满足条件的索引对的数目。

**输入输出样例**:

**输入样例 #1**:
```
3
3
1 2 3
3
1 1 1
4
2 1 4 3
```

**输出样例 #1**:
```
6
3
7
```**题目大意**: 定义一个数组是好的,当且仅当这个数组在 $[l, r]$ 范围内,对于任意的 $i$ ,都有 $a_i \ge i - l + 1$。求在给定的含有 $n$ 个数的数组 $a$ 中,有多少个子数组是好的。 **输入输出格式**: **输入格式**: - 每个测试包含多个测试用例。第一行包含测试用例的数量 $t$($1 \le t \le 2 \times 10^5$)。 - 每个测试用例的第一行包含一个整数 $n$($1 \le n \le 2 \times 10^5$),表示数组 $a$ 的长度。 - 每个测试用例的第二行包含 $n$ 个空格分隔的整数 $a_1, a_2, \ldots, a_n$($1 \le a_i \le n$),代表数组 $a$。 - 保证所有测试用例的 $n$ 之和不超过 $2 \times 10^5$。 **输出格式**: - 对于每个测试用例,输出满足条件的索引对的数目。 **输入输出样例**: **输入样例 #1**: ``` 3 3 1 2 3 3 1 1 1 4 2 1 4 3 ``` **输出样例 #1**: ``` 6 3 7 ```

加入题单

上一题 下一题 算法标签: