[Problem Solving/Java] 백준 3009번 - 네 번째 점

2024. 1. 2. 14:23·알고리즘 문제 풀이 (Problem Solving)

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

 

3009번: 네 번째 점

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

www.acmicpc.net

문제

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

입력

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

출력

직사각형의 네 번째 점의 좌표를 출력한다.

첫 번째 시도

package ex1;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;

public class Main3 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        String a[] = br.readLine().split(" ");
        String b[] = br.readLine().split(" ");
        String c[] = br.readLine().split(" ");
        int a1 = Integer.parseInt(a[0]);
        int a2 = Integer.parseInt(a[1]);
        int b1 = Integer.parseInt(b[0]);
        int b2 = Integer.parseInt(b[1]);
        int c1 = Integer.parseInt(c[0]);
        int c2 = Integer.parseInt(c[1]);
        int r1 = 0;
        int r2 = 0;
        if (a1 == b1) {
            r1 = c1;
            if (a2 == b2) {
                r2 = c2;
            } else if (a2 == c2) {
                r2 = b2;
            } else if (b2 == c2) {
                r2 = a2;
            }
        } else if (a1 == c1) {
            r1 = b1;
            if (a2 == b2) {
                r2 = c2;
            } else if (a2 == c2) {
                r2 = b2;
            } else if (b2 == c2) {
                r2 = a2;
            }
        } else if (b1 == c1) {
            r1 = a1;
            if (a2 == b2) {
                r2 = c2;
            } else if (a2 == c2) {
                r2 = b2;
            } else if (b2 == c2) {
                r2 = a2;
            }
        }
        System.out.println(r1 + " " + r2);
    }
}

해결 방법

  • 주어진 세 점 중 x좌표가 같은 두 개의 점을 제외한 점의 x좌표를 네 번째 점의 x좌표로, y좌표가 같은 두 개의 점을 제외한 점의 y좌표를 네 번째 점의 y좌표로 하면 축에 평행한 직사각형을 만들 수 있다. 
반응형

'알고리즘 문제 풀이 (Problem Solving)' 카테고리의 다른 글

[Problem Solving/Java] 백준 1002번 - 터렛  (1) 2024.01.02
[Problem Solving/Java] 백준 4153번 - 직각삼각형  (0) 2024.01.02
[Problem Solving/Java] 백준 1085번 - 직사각형에서 탈출  (0) 2024.01.02
[Problem Solving/Java] 백준 4948번 - 베르트랑 공준  (2) 2024.01.02
[Problem Solving/Java] 백준 1929번 - 소수 구하기  (0) 2024.01.02
'알고리즘 문제 풀이 (Problem Solving)' 카테고리의 다른 글
  • [Problem Solving/Java] 백준 1002번 - 터렛
  • [Problem Solving/Java] 백준 4153번 - 직각삼각형
  • [Problem Solving/Java] 백준 1085번 - 직사각형에서 탈출
  • [Problem Solving/Java] 백준 4948번 - 베르트랑 공준
LoopThinker
LoopThinker
모르는 것을 알아가고, 아는 것을 더 깊게 파고드는 공간
  • LoopThinker
    CodeMemoir
    LoopThinker
  • 전체
    오늘
    어제
    • 분류 전체보기 (231)
      • 개발 (Development) (165)
        • Algorithm (1)
        • Angular (1)
        • AWS (6)
        • DeepSeek (2)
        • Docker (7)
        • Git (3)
        • Java (34)
        • JavaScript (4)
        • Kafka (5)
        • Kubernetes (4)
        • Linux (7)
        • PostgreSQL (38)
        • Python (31)
        • React (3)
        • TypeScript (3)
        • Vue.js (5)
        • General (11)
      • 데이터 분석 (Data Analysis) (1)
      • 알고리즘 문제 풀이 (Problem Solving.. (27)
      • 자격증 (Certifications) (24)
        • ADsP (14)
        • 정보처리기사 (4)
        • Linux Master (5)
        • SQLD (1)
      • 기술 동향 (Tech Trends) (11)
      • 기타 (Others) (3)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    ADsP
    자바
    백준온라인저지
    deepseek
    PostgreSQL
    오답노트
    백준자바
    백준
    JPA
    Vue.js
    DevOps
    Spring boot
    JSON
    Linux master
    백준알고리즘
    python
    springboot
    java
    리눅스 마스터 2급
    pandas
    timescaledb
    리눅스 마스터 2급 2차
    Kafka
    docker
    AWS
    Kubernetes
    javascript
    Linux
    데이터분석
    MyBatis
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
LoopThinker
[Problem Solving/Java] 백준 3009번 - 네 번째 점
상단으로

티스토리툴바