力扣 256. 粉刷房子 LCR 091. 粉刷房子 python AC

动态规划

class Solution:
    def minCost(self, costs):
        row, col = len(costs), 3
        dp = [[0] * col for _ in range(row + 1)]
        for i in range(1, row + 1):
            for j in range(col):
                dp[i][j] = costs[i - 1][j - 1]
                if j == 0:
                    dp[i][j] += min(dp[i - 1][1], dp[i - 1][2])
                elif j == 1:
                    dp[i][j] += min(dp[i - 1][0], dp[i - 1][2])
                elif j == 2:
                    dp[i][j] += min(dp[i - 1][0], dp[i - 1][1])
        return min(dp[row])

dp[i][j]:

i表示第i个房子,j表示涂成的颜色(0、1、2分别表示涂成红、蓝、绿色),dp[i][j]表示第i个房子涂成j色需要的最少成本(只要不和第i-1个房子颜色相同)

相关推荐

  1. 256. 粉刷房子 LCR 091. 粉刷房子 python AC

    2024-05-10 22:30:06       26 阅读
  2. 面试算法91:粉刷房子

    2024-05-10 22:30:06       54 阅读
  3. #988. 【提高】跳房子

    2024-05-10 22:30:06       45 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-05-10 22:30:06       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-05-10 22:30:06       106 阅读
  3. 在Django里面运行非项目文件

    2024-05-10 22:30:06       87 阅读
  4. Python语言-面向对象

    2024-05-10 22:30:06       96 阅读

热门阅读

  1. Unity延时触发的几种常规方法

    2024-05-10 22:30:06       28 阅读
  2. -Practical Assignment: Isolated Spoken Digit Recognition

    2024-05-10 22:30:06       28 阅读
  3. Managing Digital Design and Web Development MANG6531

    2024-05-10 22:30:06       36 阅读
  4. git報錯:! [rejected] master -> master (fetch first)

    2024-05-10 22:30:06       30 阅读
  5. qt窗口置顶

    2024-05-10 22:30:06       27 阅读
  6. Python 的主要应用领域有哪些?

    2024-05-10 22:30:06       36 阅读
  7. 矩阵的压缩存储

    2024-05-10 22:30:06       30 阅读
  8. js实现定时器

    2024-05-10 22:30:06       27 阅读
  9. UE5缺少SDK,而无法在windows平台打包的解决方法

    2024-05-10 22:30:06       28 阅读