[CodingTest] 점의 위치 구하기

hye·2023년 3월 21일
0

AlgorithmTest

목록 보기
48/95

📖 Exam

문제 설명

사분면은 한 평면을 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 함수를 완성해주세요.

제한 조건

  • dot의 길이 = 2
  • dot[0]은 x좌표를, dot[1]은 y좌표를 나타냅니다
  • -500 ≤ dot의 원소 ≤ 500
  • dot의 원소는 0이 아닙니다.

입출력 예

dotresult
[2, 4]1
[-7, 9]2
  • 입출력 예 #1
    dot이 [2, 4]로 x 좌표와 y 좌표 모두 양수이므로 제 1 사분면에 속합니다. 따라서 1을 return 합니다.

  • 입출력 예 #2
    dot이 [-7, 9]로 x 좌표가 음수, y 좌표가 양수이므로 제 2 사분면에 속합니다. 따라서 2를 return 합니다.


✍ Answer

class Solution {
    public int solution(int[] 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;
        }
    }
}

💡 Realization

  • 각 4분면을 기준으로 조건을 뒀는데 x기준 조건, y기준 조건으로 놓고서 나누는 방식도 있네.
  • int x = dot[0];, int y = dot[1]; 지금 같은 문제는 이렇게 각 변수명 선언하고 하는게 보기 더 좋은거 같다.

참고사이트:
https://school.programmers.co.kr/learn/courses/30/lessons/120841/solution_groups?language=java

profile
Junior Backend Developer

0개의 댓글