kt: add «2570. Merge Two 2D Arrays by Summing Values»

URL:	https://leetcode.com/problems/merge-two-2d-arrays-by-summing-values/
Signed-off-by: Matej Focko <me@mfocko.xyz>
This commit is contained in:
Matej Focko 2025-03-02 16:40:34 +01:00
parent 18278624e8
commit 667b9abb98
Signed by: mfocko
SSH key fingerprint: SHA256:icm0fIOSJUpy5+1x23sfr+hLtF9UhY8VpMC7H4WFJP8

View file

@ -0,0 +1,39 @@
class Solution {
fun mergeArrays(
nums1: Array<IntArray>,
nums2: Array<IntArray>,
): Array<IntArray> {
val (n, m) = nums1.size to nums2.size
var (i, j) = 0 to 0
val result: MutableList<IntArray> = mutableListOf()
while (i < n && j < m) {
when {
nums1[i][0] == nums2[j][0] -> {
result.add(intArrayOf(nums1[i][0], nums1[i][1] + nums2[j][1]))
i++
j++
}
nums1[i][0] < nums2[j][0] -> {
result.add(nums1[i])
i++
}
else -> {
result.add(nums2[j])
j++
}
}
}
while (i < n) {
result.add(nums1[i])
i++
}
while (j < m) {
result.add(nums2[j])
j++
}
return result.toTypedArray()
}
}