solution.md 1.1 KB
Newer Older
每日一练社区's avatar
每日一练社区 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
# 连号区间数

#### 问题描述
小明这些天一直在思考这样一个奇怪而有趣的问题:  
在1~N的某个全排列中有多少个连号区间呢?这里所说的连号区间的定义是:  
如果区间[L, R] 里的所有元素(即此排列的第L个到第R个元素)递增排序后能得到一个长度为R-L+1的“连续”数列,则称这个区间连号区间。  
当N很小的时候,小明可以很快地算出答案,但是当N变大的时候,问题就不是那么简单了,现在小明需要你的帮助。

#### 输入格式
第一行是一个正整数N (1 <= N <= 50000), 表示全排列的规模。  
第二行是N个不同的数字Pi(1 <= Pi <= N), 表示这N个数字的某一全排列。  

#### 输出格式
输出一个整数,表示不同连号区间的数目。

#### 样例输入1
```
4
3 2 4 1
```
#### 样例输出1
```
7
```
#### 样例输入2
```
5
3 4 2 5 1
```
#### 样例输出2
```
9
```

## aop

### before

```cpp

```

### after

```cpp

```

## 答案

```cpp

```

## 选项

### A

```cpp

```

### B

```cpp

```

### C

```cpp

```