반응형

● 문제 접근 과정

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

2. 점의 좌표가 하나 씩 나올때, 직사각형이 될려면 x값과 y값이 같은게 2번씩 나와야 한다.

ex) 5,5  5,7  7,5  여기서 직사각형이 될려면 7,7 이 나와야한다. x 값에서 5는 2번 나왔지만, 7은 하나 밖에 없다 그래서 7 그리고 y값 또한 5는 두 번 나왔지만, 7은 없다. 그래서 7

3. if문을 이용하여 구현.

● 구현

#include <algorithm>
#include <iostream>
using namespace std;

int main() {
  int x1, x2, x3, x4, y1, y2, y3, y4;

  cin >> x1 >> y1 >> x2 >> y2 >> x3 >> y3;

  if (x1 == x2) {
    x4 = x3;
    if (y1 == y2) {
      y4 = y3;
    } else if (y1 == y3) {
      y4 = y2;
    } else {
      y4 = y1;
    }
    cout << x4 << " " << y4;
  } else if (x1 == x3) {
    x4 = x2;
    if (y1 == y2) {
      y4 = y3;
    } else if (y1 == y3) {
      y4 = y2;
    } else {
      y4 = y1;
    }
    cout << x4 << " " << y4;
  } else {
    x4 = x1;
    if (y1 == y2) {
      y4 = y3;
    } else if (y1 == y3) {
      y4 = y2;
    } else {
      y4 = y1;
    }
    cout << x4 << " " << y4;
  }
}
반응형

+ Recent posts