力扣每日一题【算法学习day.131】

前言

###我做这类文章一个重要的目的还是记录自己的学习过程,我的解析也不会做的非常详细,只会提供思路和一些关键点,力扣上的大佬们的题解质量是非常非常高滴!!!


习题

1.用地毯覆盖后的最少白色砖块

题目链接: 2209. 用地毯覆盖后的最少白色砖块 - 力扣(LeetCode)

题面:

附上灵神代码:

java 复制代码
class Solution {
    public int minimumWhiteTiles(String floor, int numCarpets, int carpetLen) {
        int m = floor.length();
        int[][] memo = new int[numCarpets + 1][m];
        for (int[] row : memo) {
            Arrays.fill(row, -1); // -1 表示没有计算过
        }
        return dfs(numCarpets, m - 1, floor.toCharArray(), memo, carpetLen);
    }

    private int dfs(int i, int j, char[] floor, int[][] memo, int carpetLen) {
        if (j < carpetLen * i) { // 剩余砖块可以全部覆盖
            return 0;
        }
        if (memo[i][j] != -1) { // 之前计算过
            return memo[i][j];
        }
        int res = dfs(i, j - 1, floor, memo, carpetLen) + (floor[j] - '0');
        if (i > 0) {
            res = Math.min(res, dfs(i - 1, j - carpetLen, floor, memo, carpetLen));
        }
        return memo[i][j] = res; // 记忆化
    }
}

后言

共勉

相关推荐
布吉岛的石头8 小时前
Java 程序员第 45 阶段11:网关统一路由大模型接口,配合 Nacos 配置治理,灰度路由:基于Nacos元数据实现大模型服务灰度发布与权重路由
java·服务发现
我命由我123459 小时前
Android 开发问题:Cannot resolve method ‘repeat‘ in ‘String‘
android·java·java-ee·android studio·android jetpack·android-studio·android runtime
baozhengw9 小时前
信创改造-SpringBootJar包改为WAR包部署Tomcat
java·tomcat
网络工程小王9 小时前
【HCIE-AI】11.模型 昇腾迁移适配-精度调试-性能调优
人工智能·学习·华为·迁移学习·昇腾
清泓y9 小时前
RAG 技术
算法·ai
阿慧今天瘦了嘛9 小时前
计算机组成原理概述:从硬件到软件的桥梁
计算机网络·算法
M1A19 小时前
基于 Spring AOP 构建系统操作日志:从注解设计到异步落库的完整实战
java
RainCity10 小时前
Java Swing 自定义组件库分享(十五)
java·笔记·后端
farerboy10 小时前
23-Java 构造函数
java·后端
坚持的小马10 小时前
Rocketmq搭建操作步骤
java·rocketmq·java-rocketmq