[BOJ/백준-Python]3009번 - 네 번째 점

3009번 - 네 번째 점

문제

세 점이 주어졌을 때, 축에 평행한 직사각형을 만들기 위해서 필요한 네 번째 점을 찾는 프로그램을 작성하시오.

입력

세 점의 좌표가 한 줄에 하나씩 주어진다. 좌표는 1보다 크거나 같고, 1000보다 작거나 같은 정수이다.

출력

직사각형의 네 번째 점의 좌표를 출력한다.

예제 입력 1

5 5
5 7
7 5

예제 출력 1

7 7

예제 입력 2

30 20
10 10
10 20

예제 출력 2

30 10


해결할 방법을 생각해보자.💡

직사각형에서 세 점의 좌표만 주어지고 나머지 한 점의 좌표를 구하는 문제다. 나는 문제를 풀기위해서 Counter() 함수를 사용했다.

import sys
from collections import Counter

우선 x좌표들을 담아줄 X와 y좌표들을 담아줄 Y리스트를 만들어주자.

X = []
Y = []

그리고 3번 반복해서 x,y를 입력받아 append해주자.

for i in range(3):
    x,y = map(int, sys.stdin.readline().split())
    X.append(x)
    Y.append(y)

x, y의 좌표를 따로 나눠준 이유가 있다. 예제 1번을 보면서 예로 들자면 x좌표가 5, 5, 7 이렇게 3개가 나왔다. x좌표가 한번만 나온 7이 답으로 출력되었다. y좌표도 5, 5, 7 이렇게 3개가 나와서 y좌표가 한번만 나온 7이 답으로 출력되었다.

예제 2번도 동일하게 x = 30, 10, 10 y = 20, 10, 20 각각 한번밖에 나오지 않은 30, 10이 출력되었다. 따라서 Counter() 함수를 사용해서 1번만 나온 키값을 출력하게 만들어주면 문제를 해결할 수 있다. 우선 X, Y를 함수를 적용해서 변수를 만들자.

count_x = Counter(X)
count_y = Counter(Y)

most_common()이라는 메소드를 사용하면 자동으로 많이 count된 것들순으로 정렬을 해준다. 따라서 거기서 두번째(인덱스로 [1])로 접근해서 키값([0])이 출력되게하자.

print(count_x.most_common()[1][0], count_y.most_common()[1][0])

코드 💻

import sys
from collections import Counter

X = []
Y = []

for i in range(3):
    x,y = map(int, sys.stdin.readline().split())
    X.append(x)
    Y.append(y)


count_x = Counter(X)
count_y = Counter(Y)

print(count_x.most_common()[1][0],count_y.most_common()[1][0])

해결 로그

문제 푼 날짜 체크
2022-07-20
   
   
   
   

2022

[web]jQuery 복습 3

1 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]jQuery 복습 2

13 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]jQuery 복습 1

14 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]JavaScript 정리4

5 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]JavaScript 정리3

10 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]JavaScript 정리2

7 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]JavaScript 정리1

8 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]CSS 기초 정리

11 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[web]HTML 기초 정리

8 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

[Pandas]pandas 연습

3 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

맨 위로 이동 ↑

2021

[Python기초]module

1 분 소요

[Noitce] 고쳐야하거나 틀린 것이 있으면 말씀해주세요!

맨 위로 이동 ↑