房屋染色

作者: 只为此心无垠 | 来源:发表于2018-03-20 15:20 被阅读19次

LeetCode题目地址
这里有n个房子在一列直线上,现在我们需要给房屋染色,分别有红色蓝色和绿色。每个房屋染不同的颜色费用也不同,你需要设计一种染色方案使得相邻的房屋颜色不同,并且费用最小。

费用通过一个nx3 的矩阵给出,比如cost[0][0]表示房屋0染红色的费用,cost[1][2]表示房屋1染绿色的费用

转移方程

转移方程
def minCost(self, costs):
        # write your code here
        #转移方程 f[i][0] = min(f[i-1][1],f[i-1][2])+cost[i][0]
        
        # 三个for循环的解释
        # i:第几个房子,等号左边和右边第一个参数
        # j:哪个颜色,等号左边第一个参数
        # k:哪个颜色,,等号右边边第二个参数
        
        #len(costs) 是行,len(costs[0])是列
        if len(costs) == 0 or len(costs[0]) == 0:
            return 0
        
        m = len(costs) 
        n = 3
        f = [[0 for i in range(n)] for i in range(m)]
        #初始化条件
        for i in range(n):
            f[0][i] = costs[0][i]
        
        #转移方程
        for i in range(1,m):
            for j in range(n):
                f[i][j] = float('inf')
                for k in range(n):
                   if j == k:
                       continue
                   f[i][j] = min(f[i-1][k]+costs[i][j],f[i][j])
                   
        return min(f[m-1][0],f[m-1][1],f[m-1][2])

相关文章

  • 房屋染色

    LeetCode题目地址这里有n个房子在一列直线上,现在我们需要给房屋染色,分别有红色蓝色和绿色。每个房屋染不同的...

  • 房屋染色 -dp

    这里有n个房子在一列直线上,现在我们需要给房屋染色,分别有红色蓝色和绿色。每个房屋染不同的颜色费用也不同,你需要设...

  • 针织物的染色方法和纱线染色设备

    一、针织物染色方法 纺织品的染色方法按形态不同主要有纤维染色、纱线染色、织物染色和成衣染色。针织物可以采用纱线染色...

  • 革兰氏染色试剂盒,解决细菌染色问题

    来聊聊细菌界的这两大染色法:革兰氏染色VS抗酸染色。 一、革兰氏染色(Gram stain) 根据革兰氏染色反应不...

  • 染色物理化学理论

    染色理论研究内容主要是研究染色热力学和染色动力学,即染色平衡和上染速率的研究。 具体包括染色工艺条件(染料浓度、...

  • HE染色法的原理及步骤

    HE染色法的原理及步骤 HE染色原理 HE 染色法为苏木精-伊红染色法,是石蜡切片技术里常用的染色法之一,也是组织...

  • 染色!

    上午刚写了点想给头发染色的心情,中午就发现衣服被洗坏了……先生的两件polo被我的红色卫衣染成了粉红色,其中一件上...

  • 染色

    从懵懂无知的少年走向成熟 没人知道你经历过什么 别人只看你的成果 不看你痛苦的过程 一点点的被社会这个大染缸染色 ...

  • 染色

    我们来到这世间 每个人都是一种颜色 把这个世界染成了五彩缤纷 这些颜色有你喜欢的 也有你不喜欢的 我们被别人染色 ...

  • 染色

    月色描着夜的蛾眉 看一看今夜人间 几人买醉 星光亲吻梦的双眼 听一听未说的话 埋了几份真心 霓虹闪烁的街头 总有人...

网友评论

    本文标题:房屋染色

    本文链接:https://www.haomeiwen.com/subject/htjeqftx.html