当前位置:首页|资讯

GFG 19 Distinct Coloring

作者:您是打尖儿还是住店呢发布时间:2024-10-02

鲜明的色彩


有一排 N 座房子,每座房子都可以涂上红、蓝、绿三种颜色中的一种。为每栋房子涂上某种颜色的成本是不同的。你必须给所有房子上色,使相邻两栋房子的颜色都不相同。求油漆所有房屋的最低成本。


在数组 r[]、g[] 和 b[] 中分别给出了将每栋房屋刷成红色、蓝色或绿色的成本。


例 1:


输入

N = 3

r[] = {1, 1, 1}

g[] = {2, 2, 2}

b[] = {3, 3, 3}

输出 4

说明 我们可以用 RGR 的方式给房屋着色,从而使成本最小。

如果我们把所有房子都涂成红色,成本可能是 3,但是我们不能把相邻的房子涂成相同的颜色。

例 2:


输入

N = 3

r[] = {2, 1, 3}

g[] = {3, 2, 1}

Mb[e] n=u{1, 3, 2}


输出: 3

说明 我们可以

以最小的成本为房屋着色。


你的任务  

您不需要阅读输入或打印任何内容。您的任务是完成

函数 distinctColoring() 的输入参数是大小 N 和颜色数组 r[]、g[]、b[]。

参数,并返回着色的最小成本,即没有两座房子的颜色相同。

相同。


预期时间复杂度:O(N) O(N)

预期辅助空间:O(N) O(N)

------------

记得LeetCode上有类似的题目,就是设置一个dp数组,然后每个位置记录当前位置使用该颜色的最小值,然后最后返回末尾时候的最小值即可。



Copyright © 2024 aigcdaily.cn  北京智识时代科技有限公司  版权所有  京ICP备2023006237号-1