Skip to content

Commit fc57066

Browse files
committed
Improved task 3424
1 parent d98a9da commit fc57066

File tree

1 file changed

+16
-10
lines changed
  • src/main/kotlin/g3401_3500/s3424_minimum_cost_to_make_arrays_identical

1 file changed

+16
-10
lines changed
Lines changed: 16 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,28 @@
11
package g3401_3500.s3424_minimum_cost_to_make_arrays_identical
22

3-
// #Medium #2025_01_19_Time_217_(100.00%)_Space_77.83_(100.00%)
3+
// #Medium #Array #Sorting #Greedy #2025_01_23_Time_38_(100.00%)_Space_64.36_(97.14%)
44

55
import kotlin.math.abs
66
import kotlin.math.min
77

88
class Solution {
99
fun minCost(arr: IntArray, brr: IntArray, k: Long): Long {
10-
var res1: Long = 0
11-
var res2: Long = 0
12-
for (i in arr.indices) {
13-
res1 = (res1 + abs((arr[i] - brr[i])))
10+
val n = arr.size
11+
var sum1: Long = 0
12+
var sum2: Long = 0
13+
for (i in 0..<n) {
14+
sum1 = sum1 + abs((arr[i] - brr[i]))
1415
}
15-
arr.sort()
16-
brr.sort()
17-
for (i in arr.indices) {
18-
res2 = (res2 + abs((arr[i] - brr[i])))
16+
if (k < sum1) {
17+
arr.sort()
18+
brr.sort()
19+
sum2 = k
20+
for (i in 0..<n) {
21+
sum2 = sum2 + abs((arr[i] - brr[i]))
22+
}
23+
} else {
24+
return sum1
1925
}
20-
return min(res1, (res2 + k))
26+
return min(sum1, sum2)
2127
}
2228
}

0 commit comments

Comments
 (0)