coding_test/BAEKJOON

백준 3009번 C언어 풀이

CodeJin 2021. 9. 10. 14:11

https://www.acmicpc.net/problem/3009

 

3009번: 네 번째 점

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

www.acmicpc.net

3개의 점이 주어졌을 때, 수평, 수직축에 평행한 직사각형을 만들기 위한 4번째 점을 찾는 프로그램. 축에 평행하지 않은 경우를 고려하게 했다면 문제가 더 어려워졌을지도 모른다.

 

그냥 단순히 x축, y축의 값의 종류가 2개씩 나오면 되므로 1개만 나온 값을 찾아준다.

 

#include <stdio.h>

int main () {
    int arr[6];/* x1, y1, x2, y2, x3, y3 */
    int x, y;
    for (int i = 0; i < 6; i++) {
        scanf("%d", &arr[i]);
    }

    if (arr[0] == arr[2]) {
        x = arr[4];
    } else if (arr[0] == arr[4]) {
        x = arr[2];
    } else {
        x = arr[0];
    }

    if (arr[1] == arr[3]) {
        y = arr[5];
    } else if (arr[1] == arr[5]) {
        y = arr[3];
    } else {
        y = arr[1];
    }

    printf("%d %d", x, y);
    return 0;
}