📝 Level 0. 점의 위치 구하기
더보기

📌 문제 설명
사분면은 한 평면을 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이 아닙니다.
📌 입출력 예
dot | result |
[2, 4] | 1 |
[-7, 9] | 2 |
📌 입출력 예 설명
입출력 예 #1
dot이 [2, 4]로 x 좌표와 y 좌표 모두 양수이므로 제 1 사분면에 속합니다. 따라서 1을 return 합니다.
입출력 예 #2
dot이 [-7, 9]로 x 좌표가 음수, y 좌표가 양수이므로 제 2 사분면에 속합니다. 따라서 2를 return 합니다.
✏️ 나의 풀이
def solution(dot):
if dot[0] > 0:
if dot[1] > 0:
return 1
else:
return 4
else:
if dot[1] > 0:
return 2
else:
return 3
✏️ 다른 풀이(1)
def solution(dot):
quad = [(3,2),(4,1)]
return quad[dot[0] > 0][dot[1] > 0]
✏️ 다른 풀이(2)
def solution(dot):
x,y = dot
if x*y>0:
return 1 if x>0 else 3
else:
return 4 if x>0 else 2
✏️ 다른 풀이(3)
def solution(dot):
a, b = 1, 0
if dot[0]*dot[1] > 0:
b = 1
if dot[1] < 0:
a = 2
return 2*a-b
https://school.programmers.co.kr/learn/courses/30/lessons/120841
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
'Algorithm > Programmers' 카테고리의 다른 글
[프로그래머스 Level 0] 삼각형의 완성조건 (1)(Python) (0) | 2024.06.06 |
---|---|
[프로그래머스 Level 0] 아이스 아메리카노(Python) (0) | 2024.06.05 |
[프로그래머스 Level 0] 짝수 홀수 개수(Python) (0) | 2024.05.29 |
[프로그래머스 Level 0] 문자 반복 출력하기(Python) (0) | 2024.05.28 |
[프로그래머스 Level 0] 특정 문자 제거하기(Python) (0) | 2024.05.27 |