😎풀이

  1. nums 순회
    1-1. nums[i]0인 경우, result[i]0으로 선언
    1-2. nums[i]가 양수인 경우, result[i]i + nums[i]만큼의 인덱스를 전진한 값으로 선언
    1-3. nums[i]가 음수인 경우, result[i]i + nums[i]만큼의 인덱스를 후진한 값으로 선언
  2. result 반환
function constructTransformedArray(nums: number[]): number[] {
    const n = nums.length
    const result = Array(n)
    for(let i = 0; i < n; i++) {
        if(nums[i] > 0) {
            result[i] = nums[(i + nums[i]) % n]
        } else if(nums[i] === 0) {
            result[i] = nums[i]
        } else if(nums[i] < 0) {
            result[i] = nums[((i + nums[i]) % n + n) % n]
        }
    }
    return result
};
profile
내 지식을 공유할 수 있는 대담함

0개의 댓글