Loading... > https://leetcode.cn/problems/6CE719/description/?envType=daily-question&envId=2024-05-02 简单题,用双指针遍历判断一遍即可。 ```c++ class Solution { public: int temperatureTrend(std::vector<int>& temperatureA, std::vector<int>& temperatureB) { const int n = temperatureA.size(); int begin = 1, res = 0; for (int i = 1; i < n; i++) { if (temperatureA[i] <=> temperatureA[i - 1] != temperatureB[i] <=> temperatureB[i - 1]) { res = std::max(res, i - begin); begin = i + 1; } } return std::max(res, n - begin); } }; ``` - 时间复杂度:$O(n)$ ,其中 $n$ 为数组的长度。 - 空间复杂度:$O(1)$ 。 最后修改:2024 年 06 月 21 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏