lc_week_前后缀分解

lc6190找到所有好下标

class Solution {
    public List<Integer> goodIndices(int[] nums, int k) {
		int[] left = new int[nums.length], right = new int[nums.length];
		for (int i = 2; i < nums.length; i++) {
			left[i] = nums[i - 1] > nums[i - 2] ? 0 : left[i - 1] + 1;
		}
		for (int i = nums.length - 3; i >= 0; i--) {
			right[i] = nums[i + 1] > nums[i + 2] ? 0 : right[i + 1] + 1;
		}
		List<Integer> list = new ArrayList<>();
		for (int i = 1; i < nums.length - 1; ++i) {
			if (left[i] >= k - 1 && right[i] >= k - 1) {
				list.add(i);
			}
		}
		return list;
	}
}

预处理前缀-> 收集结果

posted @   北de窗  阅读(12)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示