개발로그필름

[프로그래머스] 점의 위치 구하기 javascript 본문

coding test/프로그래머스

[프로그래머스] 점의 위치 구하기 javascript

yuullog 2023. 4. 25. 11:21
728x90
반응형
SMALL

 

https://school.programmers.co.kr/learn/courses/30/lessons/120841

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

문제

 

 

나의 풀이

function solution(dot) {
    if(dot[0] > 0 && dot[1] > 0)
        return 1;
    else if(dot[0] < 0 && dot[1] > 0)
        return 2;
    else if(dot[0] < 0 && dot[1] < 0)
        return 3;
    else
        return 4;
}

엄청 단순하게 풀었다 조건문과 && 연산으로 해결했는데

1사분면은 ++


2사분면은 -+


3사분면은 --


4사분면은 +-

라는 점을 이용해 풀었다

 

 

다른 사람 풀이

function solution(dot) {
    const [num,num2] = dot;
    const check = num * num2 > 0;
    return num > 0 ? (check ? 1 : 4) : (check ? 3 : 2);
}

처음에 풀이를 보고 이게 뭔가 싶었다

내가 처음 보는 풀이랄까...?

그래서 하나하나 코드를 뜯어서 공부해봤다

구조분해를 써서 코드를 작성한거 같다

 

구조 분해 할당 구문은 배열이나 객체의 속성을 해체하여 그 값을 개별 변수에 담을 수 있게 하는 JavaScript 표현식

 

num * num2 > 0 인 경우의 수는 1사분면과 3사분면,

num > 0 인 경우의 수는 1사분면과 4사분면반대는 2사분면과 4사분면

 

 

 

 

반응형
LIST
Comments