class Solution {
public:
int alternatingSubarray(vector<int>& nums) {
int res = -1;
int i = 0, n = nums.size();
while (i < n - 1) {
if (nums[i + 1] - nums[i] != 1) {
i ++ ;
continue;
}
int i0 = i;
i += 2;
while (i < n && nums[i] == nums[i - 2]) i ++ ;
res = max(res, i - i0);
i -- ;
}
return res;
}
};