题目描述
blablabla
样例
import java.util.*;
class Main{
static final int N = 10010;
static final int INF = 100100;
static int arr[] = new int[N];
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int cnt = 0;
for(int i = 0; i<n;i++) arr[i] =sc.nextInt();
for(int i = 0; i<n;i++){ //每次循环左端点。[i , j]
int maxv = -INF; int minv = INF;
for(int j =i;j < n;j++){
maxv = Math.max(maxv,arr[j]); //找到数组中的最大值
minv = Math.min(minv,arr[j]); //找到数组中的最小值
if(maxv - minv == j - i)cnt++;
}
}
System.out.println(cnt);
}
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla