当前位置: 代码迷 >> 综合 >> 1341B Nastya and Door
  详细解决方案

1341B Nastya and Door

热度:21   发布时间:2024-02-22 19:31:55.0

在这里插入图片描述
题目:给定含有n个元素的数组, 找出长度为 K 的含有山峰最多的子数组(山峰如果在边界则不被计算在内,山峰为比两边元素都大的元素)

思路:
因为 “山峰”位于边界不算入值内,所以提前一位遍历

t=int(input())
for i in range(t):n,k=map(int,input().split())a=list(map(int,input().split()))p=[0]*nans, tmp, ind = 0,0,0for i in range(2,n):if a[i-2] < a[i-1] > a[i]:tmp += 1p[i-1] = 1if i >= k:tmp -= p[i - k + 1]if ans < tmp:ans = tmpind = max(0, i - k + 1)print(ans + 1, ind + 1)