diff --git "a/leetcode3/\354\240\225\354\247\204\354\230\201/4083. Minimum Deletions to Make Array Sharp" "b/leetcode3/\354\240\225\354\247\204\354\230\201/4083. Minimum Deletions to Make Array Sharp" new file mode 100644 index 00000000..c48ed2d1 --- /dev/null +++ "b/leetcode3/\354\240\225\354\247\204\354\230\201/4083. Minimum Deletions to Make Array Sharp" @@ -0,0 +1,27 @@ +/** + * @param {number[]} nums + * @return {number} + */ +var minDeletions = function(nums) { + /* + sharp 조건 : a[i] ^ a[i+1] !== 0 + 1. 아이디어 + - for 문을 돌면서 nums 원소 하나씩 확인 + - arr 마지막 원소와 nums[i] 비교 + - if XOR == 0 이면 push 안함 + - XOR != 0 이면 nums[i] push + - nums.length - 해당 배열의 length + */ + + let arr = []; + + for (let i = 0; i < nums.length; i++) { + if (arr.length == 0) { + arr.push(nums[i]); + } else if ((arr[arr.length - 1] ^ nums[i]) != 0) { + arr.push(nums[i]); + } + + } + return (nums.length - arr.length); +};