본문 바로가기
Development/Baekjoon

[C#] 3009번: 네 번째 점

by Mobics 2025. 9. 22.

목차


    백준 단계별로 풀어보기

    25.09.22

    10단계: 기하 1: 직사각형과 삼각형


    3009번: 네 번째 점

    문제 링크 : https://www.acmicpc.net/problem/3009

     

    문제 풀이

    >> 문제를 풀기 위해 알아야 할 개념

    - 축에 평행한 직사각형을 만들기 위해 필요한 네 번째 점을 찾는 방법

    : 직사각형이 축에 평행하기 때문에 모든 좌표를 나열했을 때, x값과 y값이 두 종류가 두 번씩 나오게 된다. 즉, 세 번째 점까지 x값과 y값을 각각 배열에 담고, x와 y 각각 1번만 나온 값을 찾으면 그 좌표가 네 번째 점의 좌표이다.

     

    >> 풀이

    1. x값과 y값을 담을 배열을 선언하고 네 번째 점의 좌표의 x, y값을 저장할 변수를 선언한다.
    2. for 반복문을 통해 3번 반복하여 입력값을 받고 x값과 y값을 각각 배열에 저장한다.
    3. 각 배열에서 같은 두 값을 찾으면 남은 한 값을 선언한 변수에 담는다.
    4. 담은 변수를 조건에 맞게 출력한다.

     

    정답 코드

    class Backjoon
    {
        static void Main(string[] args)
        {
            int[] x = new int[3];
            int[] y = new int[3];
            int resultX = 0;
            int resultY = 0;
            
            for (int i = 0; i < 3; i++)
            {
                string[] input = Console.ReadLine().Split();
                x[i] = int.Parse(input[0]);
                y[i] = int.Parse(input[1]);
            }
            
            if (x[0] == x[1]) resultX = x[2];
            else if (x[0] == x[2]) resultX = x[1];
            else resultX = x[0];
            
            if (y[0] == y[1]) resultY = y[2];
            else if (y[0] == y[2]) resultY = y[1];
            else resultY = y[0];
            
            Console.Write(resultX + " " + resultY);
        }
    }

    'Development > Baekjoon' 카테고리의 다른 글

    [C#] 9063번: 대지  (0) 2025.09.24
    [C#] 15894번: 수학은 체육과목 입니다  (0) 2025.09.23
    [C#] 1085번: 직사각형에서 탈출  (0) 2025.09.20
    [C#] 27323번: 직사각형  (0) 2025.09.19
    [C#] 11653번: 소인수분해  (0) 2025.09.18