3009_백준 [네 번째 점]

2022. 9. 20. 21:15알고리즘 공부/백준 문제풀이

SMALL

2022.09.20

브론즈 3

c++ 사용

 

문제

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

입력

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

 

#include<iostream>
using namespace std;

int main() {
	int x1, x2, x3; // 사각형의 x 좌표
	int y1, y2, y3; // 사각형의 y 좌표
	int resultx, resulty;

	cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;
	
    // 중복되는 값을 제외하는 조건
	if (x1 == x2) resultx = x3;
	else if (x1 == x3) resultx = x2;
	else resultx = x1;

	if (y1 == y2) resulty = y3;
	else if (y1 == y3) resulty = y2;
	else resulty = y1;

	cout << resultx << " " << resulty;
}

 

  1. 직사각형의 꼭짓점 좌표값을 입력받는다.
  2. 네 꼭짓점에서 x, y좌표 값은 두 개씩 중복되어야 한다. (ex. (2,3), (2,4), (5,3), (5,4))
  3. 따라서 세 좌표에서 중복되지 않는 값들이 네 번째 점이 된다.

 

처음엔 어음...어떻게 하나 싶지만

예시 하나만 잡고 그림으로 좀만 그려보면 바로 찾을 수 있는 규칙이 있어

수월히 풀이 가능합니다~~

반응형
LIST