Skip to content

Commit 5ee93a8

Browse files
add yet prod variant
1 parent d244491 commit 5ee93a8

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

contest/src/main/java/com/github/contest/array/ArrayProdVariant.kt

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,25 @@ fun applyOperationsProdVariant(nums: IntArray): IntArray {
5151
nums[it] = 0
5252
}
5353

54+
return nums
55+
}
56+
57+
58+
fun applyOperationsProdVariantII(nums: IntArray): IntArray {
59+
nums.indices.drop(1).forEach { i ->
60+
if (nums[i - 1] == nums[i]) {
61+
nums[i - 1] *= 2
62+
nums[i] = 0
63+
}
64+
}
65+
66+
var insertPos = 0
67+
nums.forEach { num ->
68+
if (num != 0) {
69+
nums[insertPos++] = num
70+
}
71+
}
72+
nums.fill(0, insertPos)
73+
5474
return nums
5575
}

0 commit comments

Comments
 (0)