目录
题目
思路
Code
题目
题目内容:
给定一个整数数组,请找出最长的子串,使得该子串中任意两个相邻元素的绝对差都严格大于 1。输出这个最长子串的长度。
这里的子串指数组中的连续片段。数组长度 n 的范围为 0 到 1000,数组元素范围为 0 到 10000。
输入描述:
输入为一个整数数组,元素之间用英文逗号分隔。若输入为空,则表示空数组。
输出描述:
输出满足条件的最长子串长度。
样例 1
输入:
1,3,4,5,6,5,4输出:
2说明:
最长子串是 1,3,长度为 2。
样例 2
输入:
1,3,5,7输出:
4说明:
整个数组相邻元素绝对差都严格大于 1。
思路
整体思路:条件只约束相邻元素,因此当某一对相邻元素绝对差小于等于 1 时,合法子串一定在这里断开。
第一步:用 left 记录当前合法连续片段的起点,从左到右枚举 right。
第二步