네 번째 점
https://www.acmicpc.net/problem/3009
문제에서 만들어지는 직사각형이 축에 평행한 직사각형이라고 했으니 만들어지는 직사각형은 다음과 같이 그릴 수 있다.
모든 좌표값을 모아서 본다면 x축은 a가 2번, b가 2번 사용되고 y축은 x가 2번, y가 2번 사용된다.
입력받은 세 좌표들을 보고 한 번만 나온 값들을 적으면 되는 것이다.
코드로는 어떻게 찾아야 할지 고민하다가 list와 set을 사용했다.
1
2
3
4
5
6
7
8
|
x1, y1 = map(int, input().split())
x2, y2 = map(int, input().split())
x3, y3 = map(int, input().split())
list_x = [x1, x2, x3]
list_y = [y1, y2, y3]
x4 = sum(set(list_x))*2 - sum(list_x)
y4 = sum(set(list_y))*2 - sum(list_y)
print(x4, y4)
|
cs |
입력받은 x좌표끼리, y좌표끼리 각각 list에 넣는다.
set으로 변환해 중복값을 없애고 (set의 합)*2 - (list의 합)으로 남은 좌표를 구했다.
'알고리즘' 카테고리의 다른 글
백준 - 3053번 (0) | 2021.08.11 |
---|---|
백준 - 4153번 (0) | 2021.08.10 |
백준 - 1085번 (0) | 2021.08.10 |
백준 - 9020번 (0) | 2021.08.06 |
백준 - 4948번 / 에라토스테네스의 체 (0) | 2021.08.06 |