2024-06-21力扣每日一题

链接:

LCP 61. 气温变化趋势

题意

A、B两个数组,数组内相邻 两个数字有大于、等于、小于三种变化情况,求最长的一段,使两个数组的这一段变化情况相同,并且不要求这一段只能有一种变化

因为数组内只有相邻数字有关,且两个数组长度一致,直接就是一次循环数组,然后判断一下变化情况是否一样就行。

实际代码:

c++ 复制代码
#include<bits/stdc++.h>
using namespace std;
int temperatureTrend(vector<int>& temperatureA, vector<int>& temperatureB)
{
    int lg=temperatureA.size();
    
    int ans=1,now=1;
    for(int i=1;i<lg;i++)
    {
        if(temperatureA[i]==temperatureA[i-1] && temperatureB[i]==temperatureB[i-1])
        {
            now++;
            //cout<<"A"<<endl;
        }
        else if(temperatureA[i]>temperatureA[i-1] && temperatureB[i]>temperatureB[i-1])
        {
            now++;
            //cout<<"B"<<endl;
        }
        else if(temperatureA[i]<temperatureA[i-1] && temperatureB[i]<temperatureB[i-1])
        {
            now++;
            //cout<<"C"<<endl;
        }
        else now=1;
        
        ans=max(ans,now);
    }
    return ans-1;
}
int main()
{
    vector<int>a,b;
    
    int lg,temp;
    cin>>lg;
    
    for(int i=1;i<=lg;i++)
    {
        cin>>temp;
        a.push_back(temp);
    }
    for(int i=1;i<=lg;i++)
    {
        cin>>temp;
        b.push_back(temp);
    }
    
    int ans = temperatureTrend(a,b);
    cout<<ans<<endl;
    return 0;
}

限制:

  • 2 <= temperatureA.length == temperatureB.length <= 1000
  • -20 <= temperatureA[i], temperatureB[i] <= 40
相关推荐
怪兽学LLM2 小时前
LeetCode 21 合并两个有序链表:彻底理解虚拟头节点(Dummy)套路
python·leetcode·链表
_日拱一卒3 小时前
LeetCode:22括号生成
算法·leetcode·职场和发展
洛水水3 小时前
【力扣100题】88.多数元素
数据结构·算法·leetcode
洛水水4 小时前
【力扣100题】87.只出现一次的数字
数据结构·算法·leetcode
风筝在晴天搁浅4 小时前
LeetCode CodeTop 82.删除排序链表中的重复元素Ⅱ
算法·leetcode·链表
洛水水5 小时前
【力扣100题】84.字符串解码
算法·leetcode·职场和发展
洛水水5 小时前
【力扣100题】89.下一个排列
数据结构·算法·leetcode
洛水水5 小时前
【力扣100题】90.寻找重复数
算法·leetcode·职场和发展
alphaTao5 小时前
LeetCode 每日一题 2026/6/8-2026/6/14
算法·leetcode
想吃火锅100516 小时前
【leetcode】14.最长公共前缀js
算法·leetcode·职场和发展