美文网首页
拼多多-最长山谷

拼多多-最长山谷

作者: 葡萄肉多 | 来源:发表于2019-07-27 15:37 被阅读0次

我们把数组 A 中符合下列属性的任意连续子数组 B 称为 “山谷”:
1)B.length >= 3
2)存在 0 < i < B.length - 1 使得 B[0] >B[1] > ... B[i-1] > B[i] < B[i+1] < ... <B[B.length - 1]
(注意:B 可以是 A 的任意子数组,包括整个数组 A。)

给出一个整数数组 A,返回最长 “山谷” 的长度。

如果不含有 “山谷” 则返回 0。

输入例子1:

[4,3,2,5,3,1,4,8]

输出例子1:

5

说明
[5,3,1,4,8]

思路

暴力

代码

s = input()
a = eval(s) #因为输入直接包括中括号,当成字符串,所以用eval处理
n = len(a)
maxn =0

for i in range(n):
    j = i
    while j+1<n and a[j+1]<a[j]:
        j += 1
    k=j
    while k+1<n and a[k]<a[k+1]:
        k += 1
    if j>i and k>j:
        maxn = max(maxn,k-i+1)
print(maxn)

相关文章

网友评论

      本文标题:拼多多-最长山谷

      本文链接:https://www.haomeiwen.com/subject/eblerctx.html