알고리즘 연습/수학, 정수론, 기하

[🥉3 / 백준 9610 / 파이썬] 사분면

김세진 2022. 3. 17. 16:17
반응형

 

 

9610번: 사분면

2차원 좌표 상의 여러 점의 좌표 (x,y)가 주어졌을 때, 각 사분면과 축에 점이 몇 개 있는지 구하는 프로그램을 작성하시오.

www.acmicpc.net

 

문제

2차원 좌표 상의 여러 점의 좌표 (x,y)가 주어졌을 때, 각 사분면과 축에 점이 몇 개 있는지 구하는 프로그램을 작성하시오.

입력

첫째 줄에 점의 개수 n (1 ≤ n ≤ 1000)이 주어진다. 다음 n개 줄에는 점의 좌표 (xi, yi)가 주어진다. (-106 ≤ xi, yi ≤ 106)

출력

각 사분면과 축에 점이 몇 개 있는지를 예제 출력과 같은 형식으로 출력한다.

 

예제 입력

5
0 0
0 1
1 1
3 -3
2 2

예제 입력

Q1: 2
Q2: 0
Q3: 0
Q4: 1
AXIS: 2

 

풀이

 

입력받는 좌표에 0이 존재하면 축, 아니면 부호에 따라 각 사분면에 카운트해준다.

 

import sys
input = sys.stdin.readline

Q = [0]*5
for _ in range(int(input())):
    x, y = map(int,input().split())
    if x==0 or y==0:
        Q[4] += 1
        continue
    if x > 0:
        if y > 0:
            Q[0] += 1
        else:
            Q[3] += 1
    else:
        if y > 0:
            Q[1] += 1
        else:
            Q[2] += 1
print(f"Q1: {Q[0]}\nQ2: {Q[1]}\nQ3: {Q[2]}\nQ4: {Q[3]}\nAXIS: {Q[4]}")
반응형