Leetcode2760. 最长奇偶子数组

Every day a Leetcode

题目来源:2760. 最长奇偶子数组

解法1:模拟

代码:

class Solution
{
public:
    int longestAlternatingSubarray(vector<int> &nums, int threshold)
    {
        int n = nums.size();
        int ans = 0;
        for (int i = 0; i < n; i++)
        {
            if (nums[i] % 2 != 0 || nums[i] > threshold)
                continue;
            int left = i, right = i;
            for (int j = i + 1; j < n; j++)
            {
                if (nums[j - 1] % 2 != nums[j] % 2 && nums[j] <= threshold)
                    right++;
                else
                    break;
            }
            ans = max(right - left + 1, ans);
        }
        return ans;
    }
};

结果:

Leetcode2760. 最长奇偶子数组_第1张图片

复杂度分析:

时间复杂度:O(n2),其中 n 是数组 nums 的长度。

空间复杂度:O(1)。

你可能感兴趣的:(Every,day,a,leetcode,leetcode,C++)