@@ -48,13 +48,72 @@ Minimum cost: 2 + 5 + 3 = 10.
48
48
### ** Python3**
49
49
50
50
``` python
51
-
51
+ class Solution :
52
+ def minCost (self , costs : List[List[int ]]) -> int :
53
+ r, g, b = 0 , 0 , 0
54
+ for cost in costs:
55
+ _r, _g, _b = r, g, b
56
+ r = min (_g, _b) + cost[0 ]
57
+ g = min (_r, _b) + cost[1 ]
58
+ b = min (_r, _g) + cost[2 ]
59
+ return min (r, g, b)
52
60
```
53
61
54
62
### ** Java**
55
63
56
64
``` java
65
+ class Solution {
66
+ public int minCost (int [][] costs ) {
67
+ int r = 0 , g = 0 , b = 0 ;
68
+ for (int [] cost : costs) {
69
+ int _r = r, _g = g, _b = b;
70
+ r = Math . min(_g, _b) + cost[0 ];
71
+ g = Math . min(_r, _b) + cost[1 ];
72
+ b = Math . min(_r, _g) + cost[2 ];
73
+ }
74
+ return Math . min(r, Math . min(g, b));
75
+ }
76
+ }
77
+ ```
78
+
79
+ ### ** C++**
80
+
81
+ ``` cpp
82
+ class Solution {
83
+ public:
84
+ int minCost(vector<vector<int >>& costs) {
85
+ int r = 0, g = 0, b = 0;
86
+ for (auto& cost : costs) {
87
+ int _ r = r, _ g = g, _ b = b;
88
+ r = min(_ g, _ b) + cost[ 0] ;
89
+ g = min(_ r, _ b) + cost[ 1] ;
90
+ b = min(_ r, _ g) + cost[ 2] ;
91
+ }
92
+ return min(r, min(g, b));
93
+ }
94
+ };
95
+ ```
57
96
97
+ ### **Go**
98
+
99
+ ```go
100
+ func minCost(costs [][]int) int {
101
+ r, g, b := 0, 0, 0
102
+ for _, cost := range costs {
103
+ _r, _g, _b := r, g, b
104
+ r = min(_g, _b) + cost[0]
105
+ g = min(_r, _b) + cost[1]
106
+ b = min(_r, _g) + cost[2]
107
+ }
108
+ return min(r, min(g, b))
109
+ }
110
+
111
+ func min(x, y int) int {
112
+ if x < y {
113
+ return x
114
+ }
115
+ return y
116
+ }
58
117
```
59
118
60
119
### ** ...**
0 commit comments