[LeetCode] 2460. Apply Operations to an Array

Chobby·2025년 10월 30일
1

LeetCode

목록 보기
739/760

😎풀이

  1. nums 순회
    1-1. 현재 요소와 다음 요소 동등 비교
    1-2. 동일한 경우 현재 요소 값을 두배로 설정
    1-3. 다음 요소의 값 0으로 설정
  2. 0이 아닌 수만 필터링
  3. 필터링 배열에서 원래 배열의 길이만큼 0을 채움
  4. 0이 채워진 연산 완료 배열 반환
function applyOperations(nums: number[]): number[] {
    for(let i = 0; i < nums.length -1; i++) {
        if(nums[i] !== nums[i + 1]) continue
        nums[i] *= 2
        nums[i + 1] = 0
    }
    const nonZero = nums.filter(a => a !== 0)
    const fillZero = [...nonZero]
    for(let i = fillZero.length; i < nums.length; i++) {
        fillZero.push(0)
    }
    return fillZero
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글