https://www.acmicpc.net/problem/3009
세 점의 좌표가 주어지면, 직사각형을 만들기 위한 나머지 한 점의 좌표를 출력하면 된다.
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
int main(){
int xarr[3];
int yarr[3];
for (int i=0;i<3;i++){
cin >> xarr[i] >> yarr[i];
}
int answer[2];
for (int i=0;i<3;i++){
int xcheck = 0;
int ycheck = 0;
for (int j=0;j<3;j++){
if (i == j)
continue;
if (xarr[i] == xarr[j]){
xcheck = 1;
}
if (yarr[i] == yarr[j]) {
ycheck = 1;
}
}
if (xcheck == 0){
answer[0] = xarr[i];
}
if (ycheck == 0){
answer[1] = yarr[i];
}
}
cout << answer[0] << ' '<< answer[1];
}
주어진 좌표들 중에서 한번만 나온 숫자를 출력하면 된다.
즉, x좌표 숫자 세개, y좌표 숫자 세개가 입력으로 들어오는데, 이때 반드시 중복되는 숫자가 들어있게 된다.
그러므로, 한 번만 나온 숫자가 나머지 점의 좌표가 되는 셈이다.
'알고리즘 > 백준' 카테고리의 다른 글
백준 9036번 대지 [C++] (2) | 2023.12.06 |
---|---|
백준 15894번 수학은 체육과목 입니다 [C++] (1) | 2023.12.05 |
백준 1085번 직사각형에서 탈출 [C++] (0) | 2023.12.02 |
백준 11653번 소인수분해 [C++] (0) | 2023.11.27 |
백준 2869번 달팽이는 올라가고 싶다 [C++] (1) | 2023.11.26 |