[JAVA/백준] 수학 2: 네 번째 점

👀 문제

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

👊 도전

1. 설계

  1. x와 y값들 중 중복되지 않는 값을 찾아 리턴한다.

2. 구현 (성공 코드)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Arrays;
import java.util.Scanner;

/**
 * 
 * @author HEESOO
 *
 */
public class Main {
	public static void main(String[] args) {
		Scanner input=new Scanner(System.in);
		int[] x=new int[3];
		int[] y=new int[3];
		
		for(int i=0;i<3;i++){
			x[i]=input.nextInt();
			y[i]=input.nextInt();
		}
		Arrays.sort(x);
		Arrays.sort(y);
		
		if(x[0]==x[1]) System.out.print(x[2]);
		else System.out.print(x[0]);
		
		if(y[0]==y[1]) System.out.print(" "+y[2]);
		else System.out.print(" "+y[0]);
	}
}

 

3. 결과

실행결과 🤟 성공 🤟

4. 설명

  1. x와 y 중 중복되지 않는 값을 찾는다.
    • x, y축에 평행한 직사각형을 만드므로 x와 y값이 두번씩은 사용되야 한다. 따라서 입력받은 값들 중 중복되지 않은 숫자를 리턴하면 된다.
    • Arrays.sort()를 이용해 오름차순으로 정렬한 후, x[1]이 x[0]과 같다면 x[2]가 하나 더 필요하다는 뜻이므로 x[2]를 출력하도록 했다. y도 마찬가지이다.

👏 해결 완료!