连号区间数

来源:互联网 发布:libsvm c语言 使用 编辑:程序博客网 时间:2024/05/16 04:38

记录每个开始的数,从左到右最小最大的数,如果最大减最小等于区间长度,ans++


#include<stdio.h>#include<algorithm>#include<queue>#include<string.h>#include<ctype.h>#include<set>#include<math.h>using namespace std;#define MAXN 15int arr[50010];int n;int main(){scanf("%d", &n);for (int i = 0; i<n; i++){scanf("%d", &arr[i]);}int ans = 0;for (int i = 0; i<n; i++){int minNum = arr[i];int maxNum = arr[i];for (int j = i; j<n; j++){minNum = min(minNum, arr[j]);maxNum = max(maxNum, arr[j]);if (j - i == maxNum - minNum){ans++;}}}printf("%d\n", ans);}


0 0
原创粉丝点击