반응형
3151. Special Array I
❓Problem
An array is considered special if every pair of its adjacent elements contains two numbers with different parity.
You are given an array of integers nums. Return true if nums is a special array, otherwise, return false.
Example 1:
Input: nums = [1]
Output: true
Explanation:
There is only one element. So the answer is true.
Example 2:
Input: nums = [2,1,4]
Output: true
Explanation:
There is only two pairs: (2,1) and (1,4), and both of them contain numbers with different parity. So the answer is true.
Example 3:
Input: nums = [4,3,1,6]
Output: false
Explanation:
nums[1] and nums[2] are both odd. So the answer is false.
🗝️ Answer
/**
* @param {number[]} nums
* @return {boolean}
*/
var isArraySpecial = function(nums) {
if(nums.length < 2) return true;
for(let i = 1 ; i < nums.length-1 ; i++){
if(nums[i] % 2 == nums[i-1] % 2) return false;
}
return true;
};
🎈Review
- 배열에서 홀수와 짝수가 연속으로 붙어 있는 경우 false
- 그렇지 않거나, 배열의 요소가 하나인 경우 true
- 생각나는 게 그냥 for 문 돌리기라 위와 같이 해결했는데 더 효율적인 방법이 있을지는 고민 필요
반응형
'프로그래밍 > 알고리즘' 카테고리의 다른 글
[LeetCode] 648. Replace Words (0) | 2024.06.07 |
---|---|
[LeetCode] 268. Missing Number (0) | 2024.05.23 |
[LeetCode] 3152. Special Array II (0) | 2024.05.23 |
댓글