Skip to content

Commit c9ee5b7

Browse files
authored
Create minimum-cost-to-make-arrays-identical.cpp
1 parent 295c469 commit c9ee5b7

File tree

1 file changed

+22
-0
lines changed

1 file changed

+22
-0
lines changed
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// Time: O(nlogn)
2+
// Space: O(1)
3+
4+
// greedy, sort
5+
class Solution {
6+
public:
7+
long long minCost(vector<int>& arr, vector<int>& brr, long long k) {
8+
const auto& cost = [&]() {
9+
long long result = 0;
10+
for (int i = 0; i < size(arr); ++i) {
11+
result += abs(arr[i] - brr[i]);
12+
}
13+
return result;
14+
};
15+
16+
long long result = cost();
17+
sort(begin(arr), end(arr));
18+
sort(begin(brr), end(brr));
19+
result = min(result, k + cost());
20+
return result;
21+
}
22+
};

0 commit comments

Comments
 (0)