프로그래머스 Lv. 0 | Day 10 조건문, 배열, 수학, 시뮬레이션

doodoo·2023년 2월 27일
0

프로그래머스

목록 보기
10/10
post-thumbnail

👀 점의 위치 구하기

문제

점의 위치 구하기

풀이

function solution(dot) {
    const [x, y] = dot;
    if(x > 0 && y > 0) return 1;
    if(x < 0 && y > 0) return 2;
    if(x < 0 && y < 0) return 3;
    if(x > 0 && y < 0) return 4;
}




👀 2차원으로 만들기

문제

2차원으로 만들기

풀이

function solution(num_list, n) {
    const answer = [];
    
    for(let i = 0; i < num_list.length; i += n) {
        const sliceNum = num_list.slice(i, i + n);
        answer.push(sliceNum);
    }
    
    return answer;
}




👀 공 던지기

문제

공 던지기

풀이

function solution(numbers, k) {
    const index = k * 2 % numbers.length - 2;
    return numbers.at(index);
}




👀 배열 회전시키기

문제

배열 회전시키기

풀이

function solution(numbers, direction) {
    if(direction === "right") {
        const last = numbers.at(-1);
        numbers.pop(); // 제일 뒷 요소 삭제
        numbers.unshift(last); // 제일 앞에 추가 
    } else {
        const first = numbers.at(0);
        numbers.shift(); // 제일 앞 요소 삭제
        numbers.push(first); // 제일 뒤에 추가 
    }
    return numbers;
}

다른 사람의 풀이

function solution(numbers, direction) {
    if(direction === "right") {
        const last = numbers.pop();
        numbers.unshift(last);
    } else {
        const first = numbers.shift();
        numbers.push(first);
    }
    return numbers;
}

numbers.pop() 을 변수에 할당하면 삭제와 할당을 동시에 할 수 있다.

0개의 댓글

관련 채용 정보