function removeElement(nums: number[], val: number): number { /* I1: nums = [l(k(3)), 2, 2, 3], val = 3 I2: nums = [l(2), k(2), 2, 3], val = 3 I3: nums = [2, l(2), k(2), 3], val = 3 I4: nums = [2, 2, l(3), k(3)], val = 3 */ let l = 0; for (let k = 0; k < nums.length; k++) { nums[l] = nums[k]; if (nums[l] !== val) { l++ } } return l; };