当前位置: 首页 > article >正文

Rust 力扣 - 2379. 得到 K 个黑块的最少涂色次数

文章目录

  • 题目描述
  • 题解思路
  • 题解代码
  • 题解链接

题目描述

在这里插入图片描述

题解思路

本题可以转换为求长度为k的子数组中白色块的最少数量

我们遍历长度为k的窗口,我们只需要记录窗口内的白色块的数量即可,遍历过程中刷新白色块的数量的最小值

题解代码

impl Solution {
    pub fn minimum_recolors(blocks: String, k: i32) -> i32 {
        let blocks = blocks.as_bytes();

        let mut sum = 0;

        for i in 0..k as usize {
            if blocks[i] == b'W' {
                sum += 1;
            }
        }

        let mut min_sum = sum;

        for i in k as usize..blocks.len() {
            if blocks[i] == b'W' {
                sum += 1;
            }

            if blocks[i-k as usize] == b'W' {
                sum -= 1;
            }

            min_sum = min_sum.min(sum);
        }

        min_sum
    }
}

题解链接

https://leetcode.cn/problems/minimum-recolors-to-get-k-consecutive-black-blocks/


http://www.kler.cn/a/374102.html

相关文章:

  • 人工智能-机器学习之多元线性回归(项目实践一)
  • 记录一次面试中被问到的问题 (HR面)
  • Python入门教程 —— 网络编程
  • ADO.NET知识总结3---SqlCommand命令对象
  • STM32-笔记37-吸烟室管控系统项目
  • arcgisPro加载CGCS2000天地图后,如何转成米单位
  • Kubernetes——part8-2 k8s集群存储解决方案 GlusterFS
  • CST软件如何理解Axial Ratio轴比
  • 【论文速读】Optimization-based Prompt Injection Attack to LLM-as-a-Judge
  • 【AI工作流】FastGPT - 深入解析FastGPT工作流编排:从基础到高级应用的全面指南
  • ESP8266 连接 MQTT 服务器EMQX 连接MQTTX
  • 【分布式技术】分布式序列算法Snowflake深入解读
  • (蓝桥杯C/C++)——STL(下)
  • Vue-cli之库模式以及模块化的魅力 - - 【UMD】
  • 【英特尔IA-32架构软件开发者开发手册第3卷:系统编程指南】2001年版翻译,2-9
  • Django后台接口开发
  • 讲一讲 kafka 的 ack 的三种机制?
  • 【全新上线】波克2021天恒系统源码 - 70款娱乐游戏带视频教程支持
  • 分类算法中 XGBoost和LightGBM 的区别简介
  • ubuntu交叉编译zlib库给arm平台使用
  • 校园社团信息管理:Spring Boot技术的最佳实践
  • 自由学习记录(16)
  • 自监督强化学习:对比预测编码(CPC)算法深度解析
  • winSCP使用root账户登录群晖
  • 【AI开源项目】Botpress - 开源智能聊天机器人平台及其部署方案
  • C++STL——list