본문 바로가기
프론트엔드로 가는 길/프로그래머스

33. 프로그래머스_점 위치 구하기

by woody-j 2023. 2. 2.

코딩일지

작성자
  최주희 작성일자 2022.02.02
세부 코딩 내용
활동 기간 2022.02.02
문제 사분면은 한 평면을 x축과 y축을 기준으로 나눈 네 부분입니다. 사분면은 아래와 같이 1부터 4까지 번호를매깁니다.


  • x 좌표와 y 좌표가 모두 양수이면 제1사분면에 속합니다.
  • x 좌표가 음수, y 좌표가 양수이면 제2사분면에 속합니다.
  • x 좌표와 y 좌표가 모두 음수이면 제3사분면에 속합니다.
  • x 좌표가 양수, y 좌표가 음수이면 제4사분면에 속합니다.


x 좌표 (x, y)를 차례대로 담은 정수 배열 dot이 매개변수로 주어집니다. 좌표 dot이 사분면 중 어디에 속하는지 1, 2, 3, 4 중 하나를 return 하도록 solution 함수를 완성해주세요.

나의 풀이
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
    }
    return 4
}
결과
통과
다른 풀이 function solution(dot) {
    const [num,num2] = dot;
    const check = num * num2 > 0;
    return num > 0 ? (check ? 1 : 4) : (check ? 3 : 2);
}

해석 와….
키워드 코딩내용 생각

1. 필요한 조건 정리


  • (x, y)를 차례대로 담은 정수 배열 dot
좌표 dot이 사분면










2. 풀이단계 정리


  • 정수 배열 하나하나 양수와 음수 일때 경우를 생각
  • &&연산자를 사용하여 두 경우가 true일때 사분면 출력
있는 그대로 작성했다.나는 또 한번 다른 사람의 풀이에 감탄하고 감탄했다. 진짜 저런 생각을 해냈을 때 뿌듯함은 말로 표현 못할 듯하다.
그리고 문득 든 생각
나는 문제를 풀고 모르는 키워드가 나오면 필기를 한다.
요즘은 키워드 필기를 하고 있지않다는 것
그만큼 나도 아는 것이 많아졌다는 거겠지
하지만 아는 만큼 부족한 것도 많이 보인다.
예전에는 내가 지금 쓴 풀이도 못썼는데 
이제는 다른 사람들이 쓴 멋진 코드를 보며 나도 본받고 싶다.
정말 나중에는 저렇게 멋진 코드를 쓸 수 있기를 바란다.