子数组的取值范围

问题描述:

给定数组arr和整数num,求arr的连续子数组中满足:其最大值减去最小值的结果大于num的个数。请实现一个尽可能快的算法。

代码部分(python3)


arr = []
for i in input().split(' '):
    arr.append(int(i))

num = int(input())
res = 0
for i in range(len(arr)):
        for j in range(i+1,len(arr)):
            if abs(arr[i] - arr[j])>num:
                res += len(arr) - j
                break;

print(res)

输入样例:
3 6 4 3 2
2

输出样例:
6

posted @ 2018-12-14 15:59  去跑去跳  阅读(622)  评论(0编辑  收藏  举报