GDCS 알고리즘 스터디 7주차(5/22) 활동 기록입니다.
7주차에는 아주 간단한 '사분면' 문제에 대한 풀이를 공유하였습니다.
문제 설명
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
문제 접근 및 해결 방식
우선 각 사분면에 몇 개의 점이 포함되는지를 기록하기 위한 리스트 points를 생성해주었다. ([Q1,Q2,Q3,Q4,AXIS])
그리고 각 점마다 x, y가 양수, 음수, 0 중 어느 곳에 속하는지에 따라 어느 사분면에 속하는지 판단하고, points 중 맞는 위치에 1을 더해준다.
그리고, 마지막에 모든 입력을 받아 처리한 후 순서대로 출력한다.
문제 풀이 코드
n = int(input())
points = [0,0,0,0,0]
for _ in range(n):
x, y = map(int, input().split( ))
if x > 0:
if y > 0: # Q1
points[0] += 1
elif y< 0: # Q4
points[3] += 1
else: # AXIS
points[4] += 1
elif x < 0:
if y > 0: # Q2
points[1] += 1
elif y< 0: # Q3
points[2] += 1
else: # AXIS
points[4] += 1
else: # AXIS
points[4] += 1
print("Q1:", points[0])
print("Q2:", points[1])
print("Q3:", points[2])
print("Q4:", points[3])
print("AXIS:", points[4])
더 좋은 접근 방법이나 풀이법이 있다면 언제든지 댓글 남겨주세요😊
본 활동 기록은 기록자가 풀이한 문제를 위주로 기술되었으며, 스터디 레포지토리에서 더 많은 문제 풀이를 확인해보실 수 있습니다.
'3-2기 스터디 > 알고리즘' 카테고리의 다른 글
[알고리즘 스터디] 6주차 활동 기록 (0) | 2022.05.19 |
---|---|
[알고리즘 스터디] 5주차 활동 기록 (0) | 2022.05.16 |
[알고리즘 스터디] 4주차 활동 기록 (0) | 2022.05.16 |
[알고리즘 스터디] 3주차 활동 기록 (0) | 2022.04.10 |
[알고리즘 스터디] 2주차 활동 기록 (0) | 2022.04.05 |
댓글