【LeetCode】3208.交替组II

题目描述:

题目链接:https://leetcode.cn/problems/alternating-groups-ii/description/?envType=daily-question&envId=2024-11-27

思路一:暴力解法(超时)

遍历对每一个元素与其后面K-1个元素组成的K个元素均判断是否满足条件,若满足条件res+1

cpp 复制代码
class Solution {
public:
    int numberOfAlternatingGroups(vector<int>& colors, int k) {
        int res = 0;
        int n = colors.size();
        for(int i=0; i<n; i++){
            
            int temp = colors[i];
            bool flag = true;
            for(int j=1; j<k ; j++){
                if(colors[(i+j)%n] == temp){
                    flag = false;
                    break;
                }
                temp = colors[(i+j)%n];
            }
            if(flag){
                res += 1;
            }
        }
        return res;
    }
};

思路二:

解题思路:

代码实现:

cpp 复制代码
class Solution {
public:
    int numberOfAlternatingGroups(vector<int>& colors, int k) {
        
        int n = colors.size();
        int res = 0;
        int temp = 1;

        for(int i=-k+1; i<n-1; i++){
            if(colors[(i+n)%n] != colors[(i+n+1)%n]){
                temp+=1;
            }
            else{
                temp=1;
            }

            if(temp>=k){
                res+=1;
            }
        }
        return res;
    }
};
相关推荐
100分简历2 分钟前
无图标简洁大方的简历模板下载
人工智能·面试·职场和发展·pdf·编辑器
v_for_van4 分钟前
力扣刷题记录1(无算法背景,纯C语言)
算法·leetcode·职场和发展
sjjhd6529 分钟前
C++模拟器开发实践
开发语言·c++·算法
踩坑记录9 分钟前
leetcode hot100 25. K 个一组翻转链表 hard
leetcode·链表
七夜zippoe10 分钟前
大模型低成本高性能演进 从GPT到DeepSeek的技术实战手记
人工智能·gpt·算法·架构·deepseek
二年级程序员11 分钟前
qsort函数的使用与模拟实现
c语言·数据结构·算法·排序算法
ajole18 分钟前
C++学习笔记——C++11
数据结构·c++·笔记·学习·算法·stl
程序员杰哥19 分钟前
如何写出高效的测试用例?
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
hoiii18720 分钟前
分布式电源选址定容的MATLAB算法实现
分布式·算法·matlab
客卿12329 分钟前
力扣二叉树简单题整理(第二集)
算法·leetcode·职场和发展